Хочу начать изучать какой нибудь "настольный" язык программирования. На данный момент я знаю PHP и JS. Программирую всего один год. C++ vs Java - самый ярый спор в 07-09 годах. Поднимаю тему ещё раз, т.к. ничего не нашёл про web. Хочу писать приложения, связанные с интернетом, с графическим интерфейсом: чаты, спамерки, какие то мини игры. Да, спамерки, грабберы, парсеры хочу писать больше всего =) Какой язык лучше подойдёт для таких целей ? P.S. Знаю что такое ООП и как оно выглядит, понимаю зачем оно нужно, но самому писать в стиле ООП не получалось, знаком с этим плохо...
Бери тогда делфи и не парься. Ну или если хочешь чтото кросплатформенное, то яву. На си++ будет сложнее писать то что ты хочешь. Хотя по сути любой язык даст тебе нормальные возможности. Но делфи проще
- Для запуска программы написанной на языке java требуется заведомо установленная ява платформа ? - Я знаю, что ява не одна. Каковы отличия ? - Никто не может подсказать книжку по яве хорошую ? P.S. Краем уха слышал, что ява работает медленнее чем C++, с чем это связано ? P.P.S. Почему возникает некросплатформенность в одном семействе ОС(Windows и др).
- Да, требуется Java RE (runtime environment) - Насчёт отличий я бы не заморачивался. Юзай JDK от Oracle. - К.Арнольд, Д.Гослинг - Язык программирования Java Б.Эккель - Философия Java - Скорость работы Java будет ниже, т.к. C++ - компилируемый язык, а Java-интерпретируемый P.S. http://ru.wikipedia.org/wiki/Java
1) Для запуска java программы нужна Java Runtime Enviroment. Это не проблема. 2) Ява одна, но платформы разные. J2EE — Java Enterprise Edition, для создания программного обеспечения уровня предприятия; J2SE — Java Standard Edition, для создания пользовательских приложений, в первую очередь — для настольных систем; J2ME — для использования в устройствах, ограниченных по вычислительной мощности, в том числе мобильных телефонах, КПК, встроенных системах; Книжек куча. Ява работает намного медленнее чем Си потому что Си/С++ генерят машинный код, который выполняет проц. А Ява генерет код для JVM(виртуальная Java-машина), которая его исполняет. по этому и медленнее выходит. Но в пользовательских приложениях это не сильно заметно. >>> Почему возникает некросплатформенность в одном семействе ОС(Windows и др). Что ты этим хотел сказать? Проги написанные под Windows будут работать отлично на любой версии, за исключением специфических функций и битности платформы (16/32/64) Все следующие версии windows поддерживают предыдущие версии. но не наоборот.
А как же си шарп? или тебе кто-то по ушам проехался что для этого лучше подходят сипласплас и явочка? С ООП проблемы - java точно не для тебя. Там нужно быть ООП-нутым до мозга костей. С гуями тоже не очень. По крайней мере дифирамбы посвященные swing'у мне еще не попадались. Да и в народе принято считать, что дотнет по-быстрее будет. Плюс который не отнять у явы - кроссплатформенность. Но с твоими задачами это как-то не очень актуально. И кстати то что ты озвучил - не есть разработка под веб имхо.
Эта небольшая статья предназначена в первую очередь для тех людей, которые хотят определиться, какой же язык программирования изучить, чтобы и времени заняло немного, и написать на нем что-то более-менее серьезное можно было, и при этом еще и заработать. Заработок, конечно, подразумевается такой – написание небольших программ для рассылок, всевозможных чекеров-реггеров, словом, автоматизация работы с web. Если зайти на крупные форумы, такие как antichat.ru, zloy.org, xakep.ru и т.д., мы увидим большое количество объявлений «программистов» с предложениями своих услуг. На деле лишь немногие способны написать действительно стоящий продукт, и потребители знают, что заказывать написание софта следует с осторожностью, иначе можно случайно нарваться на вечно глючащее и плохо работающее г*вно. Разумеется, покупатели этого не хотят и в первую очередь требуют от исполнителя некоторое количество положительных отзывов, примеры работ и демо-версии. Итак, мы плавно переходим к вопросу о том, как можно успешно закрепиться на рынке производства подобного софта. В первую очередь следует изучить годный язык программирования (об этом я расскажу далее). После некоторого освоения языка очень неплохо написать какую-либо несложную программу, демонстрирующую ваши возможности, которая была бы нужна людям. Конечно, нужно стараться все сделать хорошо, иначе потребители бесплатной программой пользоваться не будут, не говоря о том, чтобы в дальнейшем заказать у вас софт. По каким-то причинам многие разработчики делают откровенную лажу, а потом еще возмущаются, что пользователи недовольны и ничего не покупают. Второй вариант – делать демо-версию платного софта. Она должна иметь заранее урезанный функционал, чтобы ее нельзя было взломать, а полная версия должна продаваться независимо. Требование к хорошему качеству программы здесь также предъявляется. Рассмотрим теперь более-менее подходящие для таких нужд языки программирования. 1. PHP. Очень популярный язык, очень многие быдлопрограммисты используют его для создания всяких там чекеров, умудряясь при этом эмулировать многопоточность. Я скажу, что язык хорош. Он отлично подходит для создания сайтов, но никак не софта, интенсивно работающего с сетью, потому что он не имеет никакой поддержки многопоточности, а еще он очень медленный. Впрочем, для самых начинающих он подойдет. 2. C#. Второй язык, который в последнее время заимел огромное количество поклонников, качество кода которых оставляет желать лучшего. Это очень гибкий язык, имеющий огромные возможности, вполне быстрый. Получаются при компиляции именно exe-файлы, а это очень важно для быдла, которое в дальнейшем будет ваш софт использовать. Помните – пользователи не способны запустить консоль, не говоря уже о скрипте на Perl. Они завалят вас тысячей вопросов, если вы сделаете что-то не слишком понятно и очевидно. Проектируйте свой продукт так, чтобы его могла использовать даже обезьяна. Из минусов можно отметить то, что программы на C# требуют установленного .NET framework, хотя в наше время это обычно не проблема. В общем, C# – вполне достойный выбор, быстро изучается. Но мало изучить азы языка, необходимо постигать ООП, классы, предоставляемые .NET framework’ом, правильно организовывать архитектуру кода, и тогда вы допустите минимум ошибок, получите легко расширяемый и быстро поддерживаемый продукт, и пользователи будут всем довольны. 3. Perl. Раз уж я упомянул Perl, то не грех рассказать и про него. Язык очень хороший и быстрый. Скрипты на нем получаются совсем короткие, а делают они сразу много всего. К сожалению, этот язык достаточно сложен для изучения, а исходные коды на нем часто трудночитаемые. Еще один минус – плохая реализация многопоточности под Windows. Готовьтесь к тому, что несколько десятков потоков в вашем скрипте займут 2-3 гигабайта оперативной памяти. Кроме того, будьте готовы пояснять, как запускать ваши скрипты (к PHP это тоже, кстати, относится). 4. C++. Наименее трендовый в этой области язык, но все-таки используется разработчиками, которые используют Borland C++ Builder. Тут, в общем-то, требования аналогичные к C#, но exe-файлы, получаемые после компиляции проекта, не требуют .NET framework. Готовых библиотек в Борланде целая куча, интерфейсы создавать просто, так как имеется множество компонентов, словом, время разработки программы сводится к минимуму, и вам даже не придется вникать в глубины C++. А вот правильно продумывать архитектуру в любом случае желательно. За прочие компиляторы типа VC++ или GCC можно даже не браться, так как вам придется самим искать готовые библиотеки, а то и вовсе писать некоторые функции для себя собственноручно. А Борланд услужливо нам все преподносит на тарелочке. 5. Delphi. См. C++. Тот же Borland, те же возможности и средства, только язык другой. Кстати, Delphi в некоторых отношениях попроще C++ будет, но я бы советоват браться именно за C++, потому что в будущем будет просто изучить и PHP, и C#, и JavaScript, и даже Perl – все они имеют си-подобный синтаксис в той или иной мере. Что еще можно посоветовать людям, решившим заняться заработками в области разработки подобного софта? Правильно спланируйте, как вы будете поддерживать свои программы. Готовьтесь к тому, что чем больше копий вы продадите, тем больше вопросов вы получите от пользователей. А уж если софт выйдет из строя… (а он обязательно когда-то выйдет, весь софт подобного рода долго не живет в силу изменений на сайтах, с которыми он работает, порой очень масштабным). Что же делать? В первую очередь, еще до продажи, создайте базу самых часто задаваемых вопросов касаемо вашей программы. По мере того, как пользователи будут обращаться к вам, добавляйте их вопросы в эту базу, если, конечно, они не слишком частные. Во-вторых, если у вас будут какие-то средства, наймите себе более-менее опытного саппорта, пусть на вопросы отвечает от, а вы пока спокойно займетесь улучшениями и расширением функционала программы. Наконец, услуги обновления и поддержки можно сделать и платными, но тогда нужно быть готовыми к тому, что количество покупателей несколько уменьшится, особенно, если ваша программа не очень хороша и имеет малое количество положительных отзывов. Ах да, не гнушайтесь тем, чтобы просить покупателей, которых ваш софт устроил, написать в ваши темы на форумах с продажей софта отзыв. Для пользователя это пара минут, а ваш топик окажется вверху списка и вы получите порцию новых покупателей. И еще. Чтобы повысить продажи, софт можно отдать на проверку. После проверки модератор отпишет в вашей теме, что софт работоспособен, и покупатели потянутся к вам. Зачастую проверка производится бесплатно, а иногда даже принудительно. На этом мои советы заканчиваются. Удачи вам в начинаниях и заработках, старайтесь писать хороший софт, тогда и покупатели будут всем довольны, и на ваши плечи меньше хлопот свалится. Взято с kaimi.ru автор d_x
GhostOnline - с ООП проблемы, но это же не значит, что мне надо писать только на процедурных языках. Это звучит примерно так: "Не катайся на велосипеде, всё равно не умеешь". кроссплатформенность - почему не актуально ? вполне актуально =) писать буду не только под себя.
C# как бы не ЯП, да кроссплатформеность тоже присутствует(конечно после прохода напильником в некоторых ситуациях), и судя по это как раз то что нужно.
PaCo - да, это что я хочу сейчас, что будет дальше не знаю, хотелось бы выучить хороший язык и писать на нём, не хочется учить несколько языков схожих по функционалу. Выучить и писать лет 5, не задумываясь о новом языке.
C++ & Qt - простота в клепании окошек, кроссплатформенонсть (если не юзать мультимедиа функции, то допиливать не придётся) Писать надо на чём удобно, а не на том что на первом месте в топе.
си шарп - не ЯП? Поделись инфой где такие грибы растут. Ну значит у нас разное видение. Я ни разу не видел например инвайтер под вк работающий на маке или линуксе =) Я тебе советовал программировать только на процедурных языках? (для справки: С++, дельфи и многие другие языки поддерживают и процедурный и объектно-ориентированный подход). Процедурные это например Си или Паскаль - а этого я никому для этих задач не посоветую. Джава же изначально проектировалась как "чистый" ОО язык. Там даже сначала классических перечислений не было. Ну и чем тебе си шарп не нравится? Писать такой софт на нем - легко. Язык актуален, активно развивается, популярность растет, без работы не останешься. А у джавы наступают не лучшие времена, есть мнение что она умирает.
Да я ничего не говорю про СИ шарп. Вообще я просто выбирал между С++ и Явой, т.к. других языков не знал, ну как, знал что они есть, но думал это всё устаревшее, т.к. все говорят про си++ и яву(для уточнения, "все" - это большинство людей, посты которых я прочитал). GhostOnline - на твой взгляд, си шарп лучше си++ для меня, или вообще, си шарп превосходит си++ ?
Учи все основные языки. Потом поймешь для чего. т.е. Си, С++, Delphi, C#, ASM можно слегка, Java, PHP, Perl, JS. Сегодня ты пишешь одно, а завтра тебе потребуется другое. Допустим: 1) тебе надо написать драйвер или что-то системное. Однозначно Си. Другому тут не место 2) Тебе надо расковырять код из чужой проги, или отдаладить свой низкоуровненый код - по-любому начальные знания ASM должны быть 3) Надо написать что-то под телефон то тут тока JAVA в основном пока. 4) Надо будет написать чтото мощное, но не связанное особо с GUI, то тут тока С++ т.к. гибкость Си и мощность классов. 5) Потребуется написать сайт - php и c# другие это уже не то. Основа корпоративных сайтой -c#. php всё остальное. питон и перл мало тут популярны. И обязательно с JS столкнешься. 6) надо чтото большое с гуи, класивое и разными БД и по быстрому - Delphi. Ну или с# но это уже чуть другое. так что как не крути, но знать надо все основные языки, конечно не требуются знания профессионала, но основы программирования должен знать для каждого. Потому что никто и никогда не сможет сказать заранее, чем он будет заниматься, через месяц или год. Всё может измениться в любой момент.
Спасибо, да, я думаю в конечном итоге так и будет. А сейчас стою перед выбором, есть большое желание выучить, но мало свободного времени. По этому собственно и выбираю. Было бы времени больше, учил бы всё подряд.. PHP и JS знаю, поэтому некоторый опыт в программировании имею(1 год).
Один язык не может превосходить другой в общем, а только в частности, применимо к области задач. В данной ситауции си шарп все же подходит лучше. На С++ требуется больше знаний и опыта, там проще совершить ошибку. В таком софте его достоинства не так нужны, как простота и удобство си шарпа. Да и си шарп тоже уже становится мощным языком, хотя бы почитать что майкрософт замутили щас с асинхронностью. Вот я 1.5 года занимался дельфи.. Многого добился, но с трудоустройством на этом языке проблемы. И зря как сейчас думаю потратил это время, рубил бы уже в шарпе нехило. Так, хватит соплей у меня предложение к модераторам раздела: т.к. такой вопрос задают очень часто, и это зачастую приводит к срачу и флуду то почему бы не написать краткий обзор типа "Какой язык выбрать для создания сетевых приложений", а такие темы запретить создавать в правилах?
2 GhostOnline а такое подобное есть. тока тема уже устарела. https://forum.antichat.ru/thread89681.html Можно конечно сейчас заново переписать и соструктурировать всё но на это время надо