Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.04.2009, 20:03   #1
sesharim
Пользователь
 
Аватар для sesharim
 
Регистрация: 27.04.2009
Сообщений: 10
Восклицание Нужен совет знающих людей!

Доброе время суток, друзья! Это мой первый пост на этом форуме, и думаю, не последний. Я очень надеюсь, что здесь действительно ответят на мой вопрос, ибо по мимо гугла я писал на многие форумы. Причем хотелось бы выслушать действительно доступный, ответ знающего человека, который работает с этим, или сталкивался, и точно знает.

Собственно, я работаю с PHP, и понял одно, что далеко не уеду только на одном языке, и решил изучать что-то ещё, что-то кроссплатформенное, с возможностью писать программы для пользователей (Десктопный софт?); Не давно перешел на Linux, читая ИТ новости, я понимаю, что линукс идет даже в школы, соответственно программировать надо под win/lin. Выбор сначала пал на Java, вроде все хорошо - кроссплатформенный, широкий. Я стараюсь выбрать ещё то направление, которое востребовано рынком. Потом я почитал ещё и о С++ и Делфи, и добавил эти языки в свой круг, но выбор стал гораздо сложнее. Вопрос: "Что же вы посоветуете из языков программирования?" банален, так как это вопрос религии. Но все же.
То что дефли только под винду, как я понял, то уже меньше интереса к этому языку. Хотя может вы скажите, что нет смысла лезть в линукс, и спокойно работать и программировать под винду, то я так и сделаю.

Собственно, выбор между языками: с++, делфи, java.
P.S: судя по яндекс-вакансиям более требуется с++, и линукс администрирование. Не пойму. Вообщем, очень прошу дословно подсказать, что-где-когда, и вопросы выше. Спасибо большое!
PP.S: Что за Qt? :-)
sesharim вне форума Ответить с цитированием
Старый 27.04.2009, 20:23   #2
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Поиск по форуму - "Какой язык выбрать","С чего начинать","Дельфи начинающим" ну и т. д.
Обсуждалось многократно.Найдете ответы на свой вопрос.
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума Ответить с цитированием
Старый 27.04.2009, 20:54   #3
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Цитата:
PP.S: Что за Qt? :-)
Кроссплатформенная библиотека для С++.

ИМХО.Сейчас рулит Java, dotNet и Ruby и многое что связано с web программированием.

А вообще, если чесно, то десктоп как таковой изжил себя.
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Старый 27.04.2009, 21:22   #4
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

Могу посоветовать Perl — пригодится и в администрировании, и в разработке как клиентского, так и серверного ПО.

Цитата:
Сообщение от sesharim Посмотреть сообщение
PP.S: Что за Qt? :-)
Незаслуженно хорошо распиаренная библиотека управляющих элементов. Те, кто её пиарят, как правило, пользуются Firefox, который сделан на Gecko, незаслуженно плохо распиаренной библиотеке управляющих элементов.

На разных платформах устройство пользовательского интерфейса отличается. С виду похоже — и там, и там кнопочки, галочки, текстовые поля. Но в деталях очень много отличий. Разные механизмы позиционирования, разное поведение элементов. Особенно это касается таких сложных элементов, как таблицы и деревья. На разных платформах они ведут себя очень по разному.

И вот, чтобы совладать с этими отличиями, пользовательский интерфейс не дублируется для каждой OS, а вместо этого используется один из кроссплатформенных тулкитов (один из которых Qt). Этот тулкит затем уже сам заботиться о создании кнопочек/галочек на каждой платформе.

Перечислю известные мне тулкиты:
1. SWT, wxWidgets, Cocotron
2. Gecko, Swing, Qt, GTK+

Тулкиты из первой группы (нативные) пытаются использовать элементы управления родной платформы. То есть, кнопочки/галочки в этих приложениях настоящие.

Тулкиты из второй группы (марсианские) забивают болт на попытки использовать родные элементы управления. Вместо этого они создают только окна, а внутри этих окон самостоятельно отрисовывают содержимое. Кнопочки/галочки в этих приложениях не настоящие, нарисованные. Большинство марсианских тулкитов пытаются мимикрировать под платформу, стараясь рисовать свои элементы управления похожими на родные.

Впрочем, для конечного пользователя настоящесть/ненастоящесть не очень различима, но в некоторых случаях шило в мешке не спрячешь. Особенно этим страдает псевдокроссплатформенный GTK+. На Windows такие приложения выглядят чуть похоже на родные, но какие–то детали постоянно проглядывают. GTK+ — это нечто, что разрабам удалось портировать с юникс, и по этому поводу они решили назвать её кроссплатформенной. Аналогично Qt. С Qt чуть получше, но у Qt чувствуется марсианская сущность. Собственно, марсианскими их назвал Джоэл Сполски:

Цитата:
Подобно тому, как инопланетяне из Звездного пути смотрящие на землю через телескопы, они знали точно на что человеческая еда должно быть похожа, но они не понимали что она должна иметь вкус как у человеческой еды. E У Java приложений меню расположены в правильном месте, но они работают совсем не так, как в других Windows приложениях.
...
Mozilla инженеры решили разрешить с помощью своего собственного изобретения названного XUL. До сих пор я впечатлен. Mozilla, наконец, добралась до момента, где она на вкус как настоящая еда. Даже мое любимое пугало Alt+Space N для минимизации окна работает в Mozilla. Это заняло у них достаточно много времени, но они сделали это.
Могу тоже сказать про user experience на Макинтоше: Firefox, особенное последних версий выглядит и работает замечательно. Пускай нет точного соответствия, но хотя бы есть те же возможности, что и на Mac OS X. А вот Psi (который сделан на Qt) — сплошное разочарование. Например, кнопка управления тулбаром есть (продолговатая в правом верхнем углу), но она ничего не делает! И вообще, с тулбаром ничего не сделать. Значки местами не переставить, лишние значки не выкинуть. Зачем кнопка — не понятно. Не можете запрограммировать — так не рисуйте эту кнопку вообще!
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума Ответить с цитированием
Старый 28.04.2009, 01:15   #5
vasek123
Заблокирован
 
Регистрация: 21.11.2008
Сообщений: 4,986
Сообщение

Лично мне нравится С++- больше возможностей... А так, собственно по теме, каждый язык- имеет как свои преимущества так и недостатки(универсального пока нет). sesharim определитесь для начала, какие вы собираетесь писать програмные приложения- поймете, какой язык ваш!

p.s. Согласен с DeKot подобные темы, уже, обсуждались несколько раз.
vasek123 вне форума Ответить с цитированием
Старый 28.04.2009, 01:52   #6
oleg kutkov
Unix C++ developer
Форумчанин
 
Аватар для oleg kutkov
 
Регистрация: 16.04.2007
Сообщений: 651
По умолчанию

Цитата:
Незаслуженно хорошо распиаренная библиотека управляющих элементов. Те, кто её пиарят, как правило, пользуются Firefox, который сделан на Gecko, незаслуженно плохо распиаренной библиотеке управляющих элементов.
Gecko - это движек бразуера, как, например, webkit в Chrome и Safari.
А сделан Firefox под GTK+ в версии для Linux и на WinAPI в Windows версии...
oleg kutkov вне форума Ответить с цитированием
Старый 28.04.2009, 06:42   #7
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

Это полноценная кроссплатформенная инфраструктура:
NSPR — фундамент Gecko: работа с файлами, памятью, временем, потоки, синхронизация потоков.
Necko — работа с сетью: протоколы, кеширование, URI.
XUL — собственно пользовательский интерфейс.

Что касается названия платформы, то я встречал названия «Mozilla Application Framework», «Gecko Runtime Framework», «XUL Runtime Framework». По сути, одно и то же.
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума Ответить с цитированием
Старый 28.04.2009, 09:36   #8
sesharim
Пользователь
 
Аватар для sesharim
 
Регистрация: 27.04.2009
Сообщений: 10
По умолчанию

Вообще планировал работать с десктоп-софтом, как и сказал, ибо веб-язык относительно знаю. :-) Как я понял, С++ кроссплатформенный язык, но у него есть уже интерфейсы под винду и под линукс? Тоесть *.exe расширение - интерфейс? Если ошибаюсь, поправьте. И такой вопрос, работая с интерфейсом под линукс, я смогу без труда перейти на инт под винду?
Может глупые вопросы задаю, но поймите правильно, иду вслепую.
И такой вопрос, есть ли смысл зацикливаться на кроссплатформенности? Думать о линуксе? Или спокойно работать под винду. Интересы оба вопроса, спасибо.

Последний раз редактировалось sesharim; 28.04.2009 в 09:40.
sesharim вне форума Ответить с цитированием
Старый 28.04.2009, 12:37   #9
Volchara
Пользователь
 
Аватар для Volchara
 
Регистрация: 25.03.2009
Сообщений: 55
По умолчанию

Я советую С++. Программирование под винду мало чем отличается от линукса.

Цитата:
Сообщение от sesharim Посмотреть сообщение
И такой вопрос, работая с интерфейсом под линукс, я смогу без труда перейти на инт под винду?
Ну несовсем без труда. Мне, например, приходится компилировать код как в линуксе так и в винде. Вобщем это трудом не считается...
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
Volchara вне форума Ответить с цитированием
Старый 28.04.2009, 18:01   #10
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Volchara Посмотреть сообщение
Я советую С++. Программирование под винду мало чем отличается от линукса.
То же самое я могу сказать про Паскаль. Мало чем отличается если это GNU Pascal.

Давайте немного расставим точки над i. Перво-наперво Вам нужен кросплатформенный инструмент, но есть один подводный камень касательно С++. С++ - это не один язык, а некоторое множество языков. Также и Паскаль это тоже множество языков - это и Компонентный Паскаль, это Глагол, это и Делфи (сначала он все таки был Паскаль).
Поэтому все те хорошести и красявости которые Вы нашли про С++, наверняка относятся к множеству языков (если конечно не указано было конкретно к какому С++). Если Вы хотите писать кроссплатформенные приложения следует внимательно отнести не только к языку, но и к среде разработки и компилятору (суда по настроениям, Вас все-таки больше интересуют компиляторы). FreePascal позволяет писать также под линукс (правда код громоздкий, но проект развивается).

Цитата:
И такой вопрос, есть ли смысл зацикливаться на кроссплатформенности? Думать о линуксе? Или спокойно работать под винду. Интересы оба вопроса, спасибо.
Я бы рекомендовал два инструмента. Один для Линукса и другой для Винды. Зачем Вам один? В том же Python под Линуксом можно ого-го и притом что он интерпретатор. А Винде работаете на С++, например.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 28.04.2009 в 18:06.
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен совет Vergiliy БД в Delphi 2 13.01.2009 08:58
Нужен совет по С++ profi Помощь студентам 3 28.07.2008 19:20
Нужен совет Михаил Юрьевич Общие вопросы Delphi 3 04.05.2008 21:52
Нужен совет Kler Свободное общение 0 27.03.2008 23:44
Нужен совет Михаил Юрьевич Общие вопросы Delphi 7 27.01.2008 10:25