Има ли бъдеще Java ?

45 отговора 2611 прегледа
в отговор на Guru #21

Re: Има ли бъдеще Java ?

>>Все пак имай впредвид, че към настоящия момент Visual Studio.NET е доста по-добро и удобно от еквивалентите за Джава и въобще целия .NET framework е доста повече пипнат и измислен - и доста по-лесен за използване.

ХА-ХА-ХА

Гуру! Прекръсти се на Дуру! (като оня, смотания сапун)

ХА-ХА-ХА




Отговор
в отговор на Mycлoн #22

Re: Има ли бъдеще Java ?

Чудесно. Гледната ти точка ми е ясна, въпроса е доколко е реална тя към настоящият момент.

Значи ти ми казваш - пич, ок, пиши си С# и това е не е лошо, но добре е и да знаеш какво е ставало в С-то отпреди 20 години, и в Лисп, и в СмолТолк. Хубаво е и да знаеш и в Жава как стоят нещата, определено не пречи.

Пречи! Във времената когато сами си пишехме свързаните списъци и сортиранията и самият език за програмиране беше просто изчистен синтаксис от 30-ина резервирани думи, беше съвсем лесно да прескоча от Паскал на С и да видя как стоят нещата там. Де факто беше същото. Пак пойнтери, пак мемори алокейшън, пак инлайн асемблер, синтаксиса беше различен. Лесна работа.

Сега всичко опира до фреймуърка. Инвестираш солидно време докато разбереш как да нагласиш уеб приложение със Жава (какво е сървлет, бийн, JSP [и защо не трябва да се ползва), сваляне на 10-на опита за заместител на JSP (Struts, Velocity.. etc), enterprise beans, JDBC, etc. etc) - и за да си expert в това определено трябва да си работил години.

Как след този опит се мигрира към АСП.НЕТ където всичко е коренно различно? Тотално различен темплейт-енджин, сървърни контроли без еквивалент в други среди, postback (симулиране на стейт през HTTP), ViewState, нов начин за кеширане, АДО.НЕТ тотално различен от JDBC, XML навсякъде ?

Мислиш ли че е лесно ? А мислиш ли, че е нужно ?

Забележи, че сериозните обяви за работа вече не изброяват 50 трибуквени акронима от технологии, а само една и то част от нея. "Expert in .NET technologies" означава почти винаги лъжа, понеже никой не може да е експерт едновременно в Уин и Уeб програмирането, както във Уеб сървисес, ремоутинг и COM+.

В такъв смисъл, ако новобранец инвестира 1 година учейки се на Жава, той де-факто избира с какво ще се занимава години наред понеже превключването от технология на технология вече не е нито толкова лесно/бързо, нито толкова безболезнено. Именно затова трябва да се мисли предварително.

И мотото "от опит глава не боли" не винаги е вярно. Предпочитам да си обуча човек от нулата за нещата, които аз пиша, отколкото да взема човек, които е свикнал на кофти и стари технологии. Нещата които са best-practices в един фреймуърк не винаги са такива в друг.

Отговор
в отговор на Mycлoн #23

Re: Има ли бъдеще Java ?

Е може да те кефи, но не е вярно. По стечение на обстоятелствата притежавам репорт от Майкрософт със процентна статистика на хората, които ползват съответно VB.NET, C# и С++ във .НЕТ фреймуърка.

По-голямата част от хората намират "скина" VB.NET за по-удобен от С#.

А понеже видях и във .НЕТ форума, че въпросния Скотовъдец използва С++ във .НЕТ фреймуърк - искам да го поздравя лично. Той изглежда е един от петимата човека в целия свят, които ползват С++ .НЕТ, което автоматично го нарежда в Топ 5 за всички времена на С++ .НЕТ програмисти.

Останиалите 4-ма са хората, които пишат примерите на С++ .НЕТ във МСДН-а.

Отговор
в отговор на Guru #24

Re: Има ли бъдеще Java ?

Налапал си се с термини като патка със жежки лайна

Отговор
в отговор на Гypy #25

Re: Има ли бъдеще Java ?

Добре де, аз едно не мога да разбера - защо винаги подкрепяш своите доводи с изрази като "хората така правят", "по целия свят така се прави" и т.н. Кои са тия хора? Дори и да ги има какво от това? На един му харесва C# на друг VB.NET, какво значение има? Това че на някой лемур му е по-удобен VB не значи, че и на мен ще ми е удобен. И не виждам никаква полза да изливаш тонове безсмислена пропаганда. Още повече, че както сам каза .NET е framework, не език. Езиците като C#, VB и Fortran ако щеш, са само обвивки на framework-a - просто един синтаксис, който прави връзката към класовете.

Замисли се, защо има толкова много вариации на C-подобния синтаксис - Perl, PHP, Java, JavaScript, ActionScript във Flash. Ами сигурно защото е удобен на "хората". И знам, знам за тези статистики, където се вижда, че повечето програмисти пишат на VB - ами много просто - това е BASIC - Beginners All Purpose Symbolic Instruction Code - т.е. език за начинаещи. Защо MS не преименуваха VB.NET на нещо друго, след като няма нищо общо със стария VB и е пренаписан на ново? Защото си остава език за начинаещи, за такива, които се учат. Всъщност езикът не пречи да се използва и за големи проекти, но големият процент идва точно от огромното количество начинаещи, които са почнали с него и на него са си останали. А и сигурно индийците преобладават във VB групата, изобщо няма да се учудя.

Отговор
в отговор на Al-5 #26

Re: I az da kaja neshto...

Sega sled kato se nachetoh na bezsmisleni sporove shte vi kaja slednoto:

Az sam zapochnal s Assembler i Basic za Pravec 82. No se nauchih da programiram sled kato minah prez Pascal. Triabva da se zapochne s Pascal. Toi dava kultura na programiraneto. A sled tova na kakvo shte se pishe...v povecheto sluchai chovek niama izbor... :-) (osven ako ne e glupak razbira se)...

I taka. Ima li znachenie na kakvo pishete. Da si programist ne znachi da znaesh opredelen ezik! Triabva da mojesh da programirash na kakvoto se naloji! C/C++, Java, Pascal, Basic, Fortran, SQL, Assembler, razni script ezici, shell-ove i t.n...

Opredeleno nachaloto e Pascal. I to niakoia po-teoretichna knijka! A ne e zle i malko matematika da se naznaiva... :-)

Отговор
в отговор на Guru #27

Re: Има ли бъдеще Java ?

> Гледната ти точка ми е ясна

съмнявам се. ще се опитам да дообясня.

>времената когато сами си пишехме свързаните списъци и сортиранията и самият
>език за програмиране беше просто изчистен синтаксис от 30-ина резервирани думи,

не говоря за постоянно пренаписване на всичко и знаене наизуст на алгоритми за сортиране. исках да изтъкна, че трябва да се познава начина по който другите вършат нещата. току виж в някои отношения той е по-добър. колкото до разглеждането на езика като набор резервирани думи - струва ми се погрешно. езика е средство за изразяване. много е възможно да определя начина на мислене и реализиране на алгоритмите. смолтолк май има само 5 ключови думи; в лисп не може да се говори за думи изобщо - там се казват форми ( special forms ) и също са сведени до минимум.

не съм искал и да говоря за специфични имплементации - не ме интересуват разликите м/у управлението на паметта в Ц и паскал. да, управлението на паметта е просто въпрос на някаква библиотека. струва си да се концентрираме върху семантичния модел - мен ме интересува колко лесно и ясно мога да опиша бизнес логиката. всички можем да шляпаме иф след иф вложени в 5 суич-а, ама на това му идва края.

>Сега всичко опира до фреймуърка.
[ орязана ода за трудностите на миграцията и научаването на нови неща ]
>Мислиш ли че е лесно ? А мислиш ли, че е нужно ?

мисля, че няма нищо ново под слънцето и миграцията и научаването не са толкова трудно постижими. разучи една гуи библиотека и лесно ще научиш 2ра и трета - колко различни мислиш, че са голото уин32 апи, мфц, WTL, wxWindows, Tk, Swing?

>никой не може да е експерт едновременно в Уин и Уeб програмирането, както
>във Уеб сървисес, ремоутинг и COM+

уеб сървисите, ремотинга и ком не са ли всички начини за привикване на методи на обекти от на майната си? без да те интересува къде и как. с първото и 3тото съм се занимавал - ами идеята е страшно еднаква апитата идват и си отиват... остават уменията.

>Предпочитам да си обуча човек от нулата за нещата, които аз пиша, отколкото
>да взема човек, които е свикнал на кофти и стари технологии.

ами как да сме сигурни, че нещата, които пишем са правилни? как да сме сигурни, че дори и да са правилни са най-добрите и оптималните? не трябва да се търсят необучени хора ами такива без капаци на очите.

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Отговор
в отговор на NiamaZnachenie #28

Re: I az da kaja neshto...

>Triabva da se zapochne s Pascal

"аз започнах с паскал, трябва и другите да започнат така!" пълен абсурд. прилича на синдрома на второкурсника, който тормози зайците само защото и него са го тормозили като е бил заек.

за сведение - някъде четох, че в първи курс в MIT се преподава един предмет "Structure and Interpretation of Computer Programs". в него се опитват да предадат идеи като абстракция в програмите - процедурна и за данни и много други полезни неща. използвания език е Scheme.

на учебника му викат "The wizard book" и го има тук. аз още не мога да повярвам как може това нещо да го преподават на първокурсници.

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Отговор
в отговор на Mycлoн #29

Re: I az da kaja neshto...

еми в наш ВУЗ ако почнат да го преподават, ще скочат 2-3 Гуру-та и ще обяснят на преподавателя, как няма смисъл от такива неща и ще го пратят да си пасе зайците

Отговор
в отговор на Mycлoн #30

Re: Има ли бъдеще Java ?

Ох. Много идеи каза и много абстрактни послания, без да кажеш как това афектира бизнес процеса - именно как помага да се прави по-добър софтуер.

Мисля, че тенденцията е ясна - не само, че не е добре да знаеш неща, странични от това което правиш, а дори в вредно. Именно на това учат managed code и програмирането като цяло във фреймуърк и АПИ. Те просто ти забраняват неща, които са излишни. Не ти трябва да знаеш, че можеш да алокираш/деалокираш памет manually. Не ти трябва да знаеш, че има животно наречено GC, което спи в тред и следи кои инстанси повече не се референсват и ги маха от паметта. Не ти трябва да знаеш разликата между О(n2) и O(logn) когато правиш уеб интранет, който се посещава от 3-ма човека. Колкото по-малко знаеш, толкова по-добре.

Ignorance is bliss.

Повечето проблеми в един проект не идват от липсата на знания, понеже това се компенсира с процес на работа и упоритост. Проблемите идват от хора с "прекомерни" (според тях) знания, които правят неща, от които няма нужда и хората написали фреймуърка вече са се погрижили отдавна за такива неща. Нагледал съм се на експерти и програмисти-звезди. Най-бъгавия и некачествен код идва именно от такива. Хора, които знаят че не знаят, гледат МСДН-а, четат бест практисес и генерират много по-качествен и ефективен код.

Отговор
в отговор на Guru #31

Re: Има ли бъдеще Java ?

>Ох. Много идеи каза и много абстрактни послания, без да кажеш как това
>афектира бизнес процеса - именно как помага да се прави по-добър софтуер.

всичко е в главата. мозъка е като мускул и като го ползваш повече може да понесе по-големи натоварвания. пак ме минаваш с "бизнес" оправдания, но продължавам да вярвам, че не можем да правим добър бизнес софтуер без да можем да правим добър софтуер.

>Те просто ти забраняват неща, които са излишни.

а как разбираме кои са излишните неща? чел ли си 1984 на Оруел?

>Ignorance is bliss.

това донякъде е така, но не е причина да остана тъп и необразован нали? тази мисъл винаги съм я разбирал като вопъл на знаещ човек, който не харесва нещо, но едва ли би се върнал назад.

>Проблемите идват от хора с "прекомерни" (според тях) знания

така е. неосъзната некомпетентност нищо повече. програмисти звезди сме виждали и за съжаление сигурно ще продължаваме да виждаме

колкото до бест практисес идеята ти - пак да те попитам как разграничаваш истинските от фалшивите бест практисес? щото ако слушаме нечии идеи за програмиране трябва всички да си изхвърлим главите и да цъкаме по уизърдите и форм дизайнерите колкото да подкараме някой готов компонент. и като уизърда се счупи, омаже реджистрито и проекта да вдигаме рамене, да подсмърчаме и да се обадим на съпорта ли? също така не можем и да вярваме безрезервно на разни онлайн общества и идеите, които дават членовете им.

можем ли да си направим галерия от worst practices маскирани и продавани като best?

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Отговор
в отговор на Guru #32

Re: Има ли бъдеще Java ?

тук намерих един пример и не можах да се сдържа без да ти го покажа.

твърдиш, че човек трябва да си следи най-добрите практики и да си следва течението с любимото апи/фреймуърк. а какво правим като стигнем до проблем "цъках по уизърда и пущината вече не върви, и само плюе някакви лайняни грешки, които не разбирам"? така де всички абстракции са донякъде пробити и е хубаво като паднем едно ниво под тях да можем да се оправим.

можем ли сега да кажем на този човек от примера, че не използва истинския фреймуърк, който ползват всички правоверни? можем ли да обвиним доставчика на средата/уизърда в производство на некачествен продукт? и най-големите програмисти-производители на лъскави фреймуърци са хора, а хората грешат.

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Отговор
в отговор на Mycлoн #33

Re: Има ли бъдеще Java ?

>> чел ли си 1984 на Оруел?

Да, при това в оригинал. И именно от аналогията със животните, които Оруел използва, ми хрумна следното сравнение:

В един от постовете си по-нагоре ти казваш, ще липсата на разностранни знания те прави като "кон с капаци". Това е изтъркана шаблонна фраза и рядко някой търси смисъл в нея, но ако се замислиш малко виж какво излиза:

1. Каква е функцията на коня - да пренася разни неща.
2. Какво пречи най-много на коня - свободата да се заглежда наляво надясно извън пътя и се разсейва - следователно губи своята ефективност.
3. Какво е решението - капаци! Просто конят не трябва да гледа настрани и трябва да вижда само пътя.

Следователно кон с капаци е всъщност доста по-ефективен от кон без капаци и в определени ситуации негативния смисъл на фразата всъщност би трябвало да е позитивен.
И примерно как може да се приложи това за нашата професия:

1. Каква е функцията на програмиста - да пише разни програми.
2. Какво пречи най-много на програмиста - свободата да се заглежда наляво надясно встрани от проблема, като се разсейва и прави излишни и грешни неща.
3. Какво е решението - managed code! Просто програмиста не трябва да гледа настрани и да размишлява колко по-яко би било да се напише това нещо на Haskell или колко по-добре би било сам да си алокира паметта, а просто да го напише за да работи.

Звучи леко гадно, но според мене е по-близо до действителността от романтичните представи, че програмирането е някаква супер възвишена научна дейност достъпна за избрано малцинство интелекти.

Отговор
в отговор на Guru #34

Re: Има ли бъдеще Java ?

ауу още малко ще поискаш царя да ни направи министерство на информацията. вдъхновен съм от същото дето го е имал саддам.

далеч съм от романтичните мотиви за неща, които би изглеждали по-добре на даден език. вълнува ме друго - езиците и платформите си имат определена цел и ниша. някои неща се правят лесно и бързо на една, други - на друга. и така ако нямам капаци ще мога да избера правилното средство за работата. не искам да сека дърва с тъпа брадва без да се сетя, че мога да я наточа или да свия резачката отнякъде.

можем да продължим конските лафове - тоя кон умря и няма смисъл да го бием повече.

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Отговор
в отговор на Guru #35

Re: Има ли бъдеще Java ?

Na tova mu se vika cinizam, ako ne go viarvash ili prostotia ako naistina go viarvash.

Ti ako predpochitash da si kon s kapaci si e tvoi problem. Lichno mene ne mi haresva. Vsastnost dosega vsichkite mi shefove sa oceniavali tova che moga da mislia, a ne che sam izpalnitel. Pozvoliaval sam si da im kazvam tove ne se pravi taka ili tove ne triava da se pravi i v bolshinstvoto sluchai sa se saglasiavali. I fakta che ne sa me uvolnili a me pitat za mnenieto mi oznachava che ne iskat ot mene da sam kon s kapaci.

Ti kato si podbirash hora za ekipa si vezmai takiva s kapaci, az predpochitam misleshti hora. Dori greshnoto mnenie spored mene struva poveche ot malchanieto i bezropotnoto izpalnenie.

Отговор
в отговор на Guru #36

Re: Има ли бъдеще Java ?

>Да, при това в оригинал. И именно от аналогията със животните, които Оруел >използва, ми хрумна следното сравнение:

аз пък съм чел и Animal Farm в оригнал....

Отговор
в отговор на Guru #37

Re: Има ли бъдеще Java ?

Гуру, много странни са ти изказванията за това, че е по-добре да знаеш
по-малко. Какво ще стане, ако след 5 години .НЕТ се превърне в
олд-скуул технология, ще почнеш да се вайкаш, че си я ползвал и че
я знаеш ли, ще си вземеш 2 месечен отпуск за да забравиш всичко свързано
с нея, едва ли не това се разбира от постовете ти, поправи ме ако греша.
Мисля, че ти пропагандираш някакво много занаятчийско отношение към
нещата, това не е така, колкото по-широк поглед имаш върху нещата и
колкото по-добре работиш с абстракции толкова по-лесно се справяш с
новите предизвикателства, не е задължително всичко различно което знаеш
да ти вреди, без значение колко си мислиш, че знаеш или не знаеш, такова
твърдение е абсурдно, по-скоро нещата опират до интелигентността
на конкретния човек и това дали той е от тези задръстеняци които
отричат всичко и всеки.

Отговор
в отговор на * #38

Re: Има ли бъдеще Java ?

>>Мисля, че ти пропагандираш някакво много занаятчийско отношение към
>>нещата,

По-професионално отношение към нещата. Стига сме се правили (програмистите) на супер-интелекти и да се държим като ощипани госпожички когато някой се опитва да ни каже, че програмиране е просто работа като всяка друга.

>>колкото по-широк поглед имаш върху нещата и
>>колкото по-добре работиш с абстракции толкова по-лесно се справяш с
>>новите предизвикателства

Аман от визионери и абстракции. Искам работещо решение, конкретно и ясно. Елементарно. Така че и на клиента да му е ясно от пръв поглед без да е учил програмиране в MIT. Абстракции и научен подход към софтуера - само ако мислиш да преподаваш следващите 20 години в университет. За реалния бизнес - умни хора, които вършат работа, не празни абстрактни приказки и псевдно-разбирачи.

А иначе Муслон е прав, темата се изчерпа така че няма какво повече да добавя по въпроса.

Отговор
в отговор на Гypy #39

Re: Има ли бъдеще Java ?

Аз не се правя на супер-интелект, аз съм супер-интелект :-)))).
Сериозно.

Отговор
в отговор на Гypy #40

Re: Има ли бъдеще Java ?

ок, майната им на абстракциите, но все пак не ми отговори на въпроса,
за това дали ако след 5 години дот нет остарее ти ще съжаляваш, че
си го знаел, или просто тъй като си умен и даваш конкретни решения
на проблемите няма да имаш никакви трудности, а останалите ще имат
сериозни такива, защото ще страдат от придобитите навици?

Отговор