download.bg
 Вход Списание  Новини  Програми  Статии  Форум  Чат   Абонамент  Топ95   Архив 

Тенденции в програмното осигуряване?

Автор
Съобщение
insecteater
Сря, 03.10.07, 10:23
Здравейте, въпросът ми е към хората запознати с различните видове програмни езици.

С навлизането на 64 битовите архитектури и операционни системи, най вероятно се налага и ново програмно осигуряване. Въпросът ми е къде е мястото на старите и изпитани езици и компилатори.

Има ли смисъл да се изучават за в бъдеще например работите включени във Visual Studio 6.0.
Що се отнася до програмиране за системни цели, има ли място и занапред C++ във вида, в който се изучава в момента? Компилаторите ще търпят ли промени. Други оптимизации и т.н. Ако някой тепърва тръгне да се захваща с програмиране, какво има смисъл да учи. В случая изключвам всички online ориентирани езици, както и интерпретаторните. Става въпрос за чиста проба изпълними файлове, било то за Windows или Linux

Идеята е продукт разработен сега, да може да се изпълнява и на стари и на нови платформи (или поне с минимално преправяне). Въпросът е не за конкретен продукт а за инвестицията от време в програмен език или съответно развойна среда.

boy4o
Сря, 03.10.07, 14:21
Ако трябва да разсъждаваме в краткосрочна перспектива, наистина въпросът за преносимостта между платформите става особено болезнен. И не само заради 64 битовите архитектури, но, също, и заради дву- и многопроцесорните системи, да не говорим за кашата, съществуваща при мобилните устройства.
На пръв поглед всичко е много просто. Имаш перфектен сорс за една платформа, пипваш го леко с оглед особеностите на новата, компилираш със съответния компилатор, тестваш и толкова...
От подобна гледна точка C++ изглежда безспорен. Езикът е толкова силно разпространен, че едва ли има платформа, за която да няма разработен компилатор, при това добре изпипан. При това има универсални възможности - от програмиране "до желязото" до засукани потребителски интерфейси. Плюс това е усъвършенстван до степен да спре да се развива съществено ( ).
Комай единственият конкурент на C++ е Делфи. С това уточнение, че ми се вижда доста по-дървен, а и въпросът с компилаторите за различни машини е доста по-мътен.

От друга страна, можем да погледнем откъм лекотата и разходите по преноса. Тук вече Java и C# (като че ли пък има някаква разлика ) започват да изглеждат за предпочитане. Не е нужно да прекомпилираш и тестваш новия компилат. Не е нужно да бърникаш по текста преди това. Всички такива грижи са на съвестта на разработчиците на съответната VM (сега ще последва, може би, възражението, че това са интерпетиращи езици). Още повече, това са, засега, езиците на мобилните устройства, а към днешна дата там има големи пари за прибиране. Но пък трудно те пускат "до желязото". Инвестицията на време за научаване може да се окаже огромна. В същност няма научаване (не говоря за ядрото на езика, то се учи за 1-2 седмици). Само в C# има няколко десетки хиляди специализирани функции - върви ги запомни! За щастие inlinе-help-ът на VS решава проблема до голяма степен. Подобно е положението и с Java...

Инвестицията в IDE. Общо взето за всички изброени тя е около нулата. Студиото на Sun е доста по евтино от VS на M$, но това едва ли е от значение. И за двете има безплатни заместители, при това съвсем не по-лоши.

Пакетът VS има един огромен недостатък - привързва те към софтуерната среда на M$, съответно към ориентирания към нея хардуер.

Развитие и усъвършенстване. Тук, струва ми се, C++ вече запецна на място. Чета из Мрежата, че пускат някои дребни подобрения на възможностите за multithread с оглед приложения върху многоядрени процесори и толкова. Вярно, че не следя много-много въпроса. Java се развива доста бързо, версията 6 се появи по-малко от половин година след 5-ицата, обновяванията й вървят горе-долу през 2 месеца. C# се обновява при всяка нова версия на VS, но несъществено. Изглежда от M$ избягват да го разбутват преди да са издухали Java от мобилния пазар, за да не отблъснат разработчиците.

Ами, стига толкова.

phrozencrew
Сря, 03.10.07, 16:46
Подобен проблем имаше навремето, когато трябваше да се премине от 16 битови на 32 битови компютри. Помня, че в училище един преподавател тогава много се беше запалил по писането на съвместими и за двете архитектури програми. Раздуваше нещо за указатели в комбинация с malloc() - това позволява писане на пренодими програми на C/C++. Не съм пробвал да компилирам програма с динамично разпределяне на паметта и да я пробвам под друга архитектура, но мисля, че техниката ще работи.
darklight
Сря, 03.10.07, 17:15
То 64 битововия софтуер е проблем най-вече на компилатора. Дали ще пишеш за 32 битова система или за 64 битова... освен ако не става дума за някакви крайни оптимизации ти е все тая. Компилатора ще се погрижи за останалото. И сега има int64 в C++, така че... :) C++ с нищо няма да се промени с преминаването към 64 бита, компилатора се грижи за всичко

boy4o
За конкуренция между Delphi и C++ не може да се говори, защото са съвсем различни неща
А за развитието на C++, почети малко за C++ 0x което ще е следващия стандарт.

редактиран от darklight на 03.10.07 17:19
angelicstar
Сря, 03.10.07, 17:34
ми ня кво се чудиш. по яко от Джавата ня. то като знаеш Джава сеедно знаш и C++. само дето в Джавата ня указатели. ама то там сичко е указател.
anonymous
Сря, 03.10.07, 18:07
Брей , намери ги ! www.devmaster.net/engines/list.php?start=0&fid=6&sid=1
Дядо поп вярно разправяше ...
insecteater
Сря, 03.10.07, 19:00

RE: Тенденции в програмното осигуряване?

” ми ня кво се чудиш. по яко от Джавата ня. то като знаеш Джава сеедно знаш и C++. само дето в Джавата ня указатели. ама то там сичко е указател. „

Колкото пъти съм похващал нещо на Java, толкова пъти съм му се дразнил. Пък и с него не може да се стигне "до желязото". Изобщо тая виртуална машина дето я я има я я няма идва малко хахаво и несериозно. То се е видяло че истината е в C++. Разбира се, не е речено че с него се почва и се свършва. От там нагоре - според случая.

На мен ми трябва за някои не толкова благонравни приложения, с лесна преносимост .

phrozencrew
Сря, 03.10.07, 21:53

RE: Тенденции в програмното осигуряване?

” То 64 битововия софтуер е проблем най-вече на компилатора... „
Виждам поредната глупост пусната от теб. Искаш да кажеш че с компилатор за 32 битова машина не мога да напиша приложение, което да се справи с 64 битова. Така ли??? И обратното??
Т.е. за да пиша код за 64 битова машина трябва да ползвам такъв компилатор. Ами тогава дали ще мога да пусна кода под 16 битов DOS??? Че какво ми пречи да управлявам паметта независимо с какъв компилатор стигам до машинните заявки?
Младежо, посъветвах те да не се обаждаш в теми, от които хал-хабер си нямаш! Моля те послушай ме!
кака.лара
Чет, 04.10.07, 17:38
Абе, не е вярно, че не може да се стигне до желязото от Жабата. Има си абстрактни класове за връзка, ако щеш с програми на C++, ако щеш с асемблерски. Май даже в Жаба 6 има и интерфейси за Win-ските API.
Дръж се за C++, от него спокойно се скача и на C# и на Жаба.

darklight, нещо ти се губи, готин. Става си конкуренция между C++ и Delfi и хем как си става! Не на системно ниво, а на приложно. Там C++ даже направо губи по точки. Особено за бизнес приложенията. Разните там ERP, CRM и не знам какво все едно са измислени точно за Delfi. Точно в бизнес софта сега са големите пари, да те светна.

darklight
Чет, 04.10.07, 17:42
кака.лара
Почети Строуструп и какво е предназначението на C++. Явно си от хората, сравняващи C и C++ :) На това му се вика 'не че не можеш да пишеш така, просто няма защо да го правиш'. C++ има една цел, Delphi друга. Delphi е RAD. И не е език за програмиране все пак. Ако ще са сравнения, да е с Visual Studio 2005 примерно? Хах, че нали Microsoft затова наеха главния разработчик на Delphi.

phrozencrew
Не съм казвал такова нещо. Опитвах се да обясня, че това дали ще работиш със 16, 32 или 64 бита е все тая. И не ти трябва нов език за програмиране. Напротив - до голяма степен съществуващия код става 64 битов само с едно прекомпилиране. А че ще тръгне и без прекомпилиране - ще тръгне. И че можеш да управляваш паметта и сам - можеш

редактиран от darklight на 04.10.07 17:45

Коментар

за нас | за разработчици | за реклама | станете автори | in english  © 1998-2024   Experta Ltd.