LINUX.ORG.RU

Программирование под Шindows vs программирование под Linux

 


0

2

В частности десктопные приложения с гуем. Просто многие тут когда-то писали проги под винду, кто-то делает это до сих пор. Я вот последний раз писал лет 5 назад и то хеллоуворлды на васике, потом на Linux пересел. От вас я хочу, чтобы вы написали, под что вам больше нравится писать программы, где какие преимущества, недостатки, в чем разница (кол-во документации, удобство программирования, например). Интересно, так сказать.
И про приложения без гуя тоже интересно.

★★

Последнее исправление: netcat (всего исправлений: 1)
Ответ на: комментарий от e1641559

Также добавь многопоточность-каждый элемент интерфейса должен иметь свой поток

Пока что мосг кипит у меня. Как это у меня в питоне интерфейс в одном потоке крутится? Чего, каллбэки тоже стали не модными???

AIv ★★★★★
()
Ответ на: комментарий от vertexua

Топик стартер сказал что знаком с бэйсиком.

Хотя бы синтаксис будет знаком.

Всё же легче начинать.

grim ★☆☆☆
()
Ответ на: комментарий от e1641559

На создание интерфейса и событий в уйдет уйма времени-это включая кипящий мозг девелопера на слежение за памятью-а вдруг забыл удалить какойто объект,а вдруг нетам удалил...
Также добавь многопоточность-каждый элемент интерфейса должен иметь свой поток,естественно добавь к этому синхронизацию потоков,и дважды кипящий мозг программиста на слежение за объектами в потоках.

Вот взял так и перечислил все мифы по С++ (-: Ну ладно, давай возьмем биндинг к Qt на языке с GC. А насчет тредов ни фига не понял! Я прекрасно живу без них. ТОчнее треды то я использую, но только для фоновой обработки. По треду на элемент не делаю и проблем с этим не имею.

джаваскрипт также в отдельном потоке работает не вешая гуй

Ага, и браузер иногда пишет - «у вас тут скрипт чето не отвечает, двайте его порубим?»

кривой разбросанный где попало код по оформлению элементов в с++

Та ну нафиг! Набросал в дизайнере формочку. Там же настроил пропертя. А в сгенеренный код можно и не заглядывать.

Я не представляю как в html/... можно писать интерфейс дольше чем на С++...никак не представляю

Ну вот тебе пример - стандартные контролы!

AF ★★★
()
Ответ на: комментарий от AIv

Как это у меня в питоне интерфейс в одном потоке крутится? Чего, каллбэки тоже стали не модными???

Хуже питона сложно чтото представить пообще,хотя я и говорил о C++

У тебя в питоне есть поток на сам питон и саму QT,QT шлет события в питон-поэтому и нет зависаний UI,однако если твой однопоточный костыль на питоне завис(ждет ответа сервера/сервиса/IO/тдтп) на обработке одного события,а произошло еще одно событие,потом еще одно,и еще одно-твой питон выкинет часть событий,часть обработается...костылять на питоне-это даже хуже чем на PHP.

e1641559
()
Ответ на: комментарий от netcat

Кстати по сабжу - связка питон-С++ (женятся через SWIG), на крестах то что должно работать быстро, на питоне все остальное, в т.ч. интерфейс, в т.ч. форточки через Tkinter. Получается даже кроссплатформенно (если руки мыть) - собирается под линухом mingw и взлетает под виндой.

В плане скорости и удобства разработки - я под свои задачи лучше варианта не видел.

AIv ★★★★★
()

Пишу на Qt4 сразу на 2,5 платформы (пара линуксов + винда). Однохренственно. Единственно, в линуксах надо контролировать, чтобы не коверкали регистр (распространённая ошибка - #include <Math.h>) и соблюдали единство кодировок.

А там, где приходится опускаться до платформозависимых вещей, в любом случае надо копать доки и проверять. К счастью, это полпроцента кода, и они легко локализуются.

В качсестве основной ОС на работе стоит Astra Linux, благо Qt Creator на нём нормально идёт. Код под остальные целевые платформы проверяю на виртуалках.

Преимущество линукса, естественно, в том, что огромное количество инструментария для разработки уже есть в системе.

hobbit ★★★★★
()
Ответ на: комментарий от yoghurt

Современные фреймворки нивелируют разницу между платформами.

Ну где-то так.

hobbit ★★★★★
()
Ответ на: комментарий от e1641559

Ты просто ниразу не работал с «тридэ» и незнаешь насколько все просто.(конечно если ты не собрался писать/делать собственный графический адаптер и всю логику к нему с расчетами геометрии)

Не пойму никак. Ты так искусно нас всех троллишь, или ты сам веришь в ту ахинею (особенно про «простое 3d»), что несешь?

dave ★★★★★
()
Ответ на: комментарий от AF

Та ну нафиг! Набросал в дизайнере формочку. Там же настроил пропертя. А в сгенеренный код можно и не заглядывать.

Чтото сложнее хеловорда представь пожалуйста,с динамическими темами,динамическими размерами,анимацией интерфейса(ВЕКТОРНОЙ)

Ну вот тебе пример - стандартные контролы!

Мне тебе открыть страшную тайну что в html есть все стандартные элементы и их кастомизация намного выше элементов ОС(элементы ОС-типа кнопок и окон обычно имеют мало возможности для кастомизации без хаков,почему не QT-qt и так рисует все элементы через css рендер,поэтому элементы qt также кастомизированы как и в html)

И уж написать

<button type="button">Click Me!</button>
куда проще чем пара сотен строк на С++

e1641559
()
Ответ на: комментарий от netcat

Это как на велосипеде, если умеешь, то не забудется.

А вообще, я бы советовал просто для общего развития разобраться с ФП(functional programming)

Не очень практично, но позже будет легче понимать элементы ФП, которые сечас уже практически в каждом популяром ЯП.

В этом плане проще всего Scheme.

Мне, лично понимание ФП помогает помогает с C#, XSLT, Javascript, Perl и многими другими ЯП.
Лямбды будут в Java 8 т.е. опять мне пригодится

grim ★☆☆☆
()
Ответ на: комментарий от schizoid

Лучше переспроси про приложения без гуя.

Гадкий QtCore и компания и здесь позволяет провести некую унификацию. И не только он. Сервер OpenSim написан на Mono, естественно, никакого гуя.

Естественно, всё это тащит за собой кучи жира, где-то больше, где-то меньше...

hobbit ★★★★★
()
Ответ на: комментарий от e1641559

У тебя в питоне есть поток на сам питон и саму QT,QT шлет события в питон-поэтому и нет зависаний UI,однако если твой однопоточный костыль на питоне завис(ждет ответа сервера/сервиса/IO/тдтп)

Интересно, а вебкит ты знаешь так же хорошо, как и Питон?

tailgunner ★★★★★
()
Ответ на: комментарий от AIv

Т.е. мэтр рекомендует js вместо питона?

вот смотри-ты используешь QT+питон.

QT-даже пара десятков стандартных контролов,и библиотека работы с сетью-уже будет под 100Мб в памяти.

Добавить питон-40Мб в памяти.

Либо вместо этих костылей использовать лаунчер вебкита и простой html,который будет жрать 50Мб.

Ваши костыли менее логичны и оправданы,чем GUI на джаваскрипте.

e1641559
()
Ответ на: комментарий от netcat

Думаю что это от зависти. ЧЕловек не асилил С++ и питон, зато разобрался с html и js. И еще этот, css, да?

Теперь он горд собой, пришел на ЛОР и рассказывает всем что готов разрабатывать чтоугодно (если это гуйня) начемугодно (если это аццкая озвученная смесь). Ну а все остальные ес-но п...сы, пишут на негодных недоговноязыках, а он один такой весь д'Артаньян.

Тут боюсь и транквилизаторы то не помогут уже, только электрошок...

AIv ★★★★★
()
Ответ на: комментарий от e1641559

Внезапно - я НЕ использую Qt. Вообще. Т.е. он стоит наверное и че то под ним крутится, но в жизни с ним не писал и не собираюсь.

Либо вместо этих костылей использовать лаунчер вебкита и простой html,который будет жрать 50Мб.

Ваши костыли менее логичны и оправданы,чем GUI на джаваскрипте.

А... если у меня нет гуя, ничего? Или если у меня есть гуй, то это макс 100 строк на питоне (и то от лени, можно и компактней) для сложного гуя типа вьювера для молдинамики, с захватом траекторий и прочими извратами (кстати там рендеринг 3D, я поржал читая Ваши мысли об ентом вопросе)?

AIv ★★★★★
()
Ответ на: комментарий от e1641559

Чтото сложнее хеловорда представь пожалуйста,с динамическими темами,динамическими размерами,анимацией интерфейса(ВЕКТОРНОЙ)

Я не пытаюсь доказать, что Qt лучше. Я пытаюсь понять, чего такого хорошего в WebKite для гуя!

Мне тебе открыть страшную тайну что в html есть все стандартные элементы и их кастомизация намного выше элементов ОС

Оставь пока кастомизацию в стороне. Просто скажи мне, где брать прогрессбар, меню, табы, тулбары, доки и т д?

AF ★★★
()
Ответ на: комментарий от netcat

Хотеть js вместо питона... это какой то настолько извращенный вкус, что маркиз де Сад думаю от зависти в гробу вертится как вентилятор.

AIv ★★★★★
()
Ответ на: комментарий от netcat

Cool
Дальше пофиг.

Если собираетесь быть программистом, советую не бояться изучать ЯП, и писать потом на ЛОРе
- Java/VB/PHP/Python самый лучший ЯП в мире!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

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

Просто определитесь с целью, затем определите популярные ЯП и библиотеки для целефой платформы.
Выберите те, котолрые развиваются и имеют сообщество или хотя-бы группу на на http://stackoverflow.com

imho програмировать для десктопа - исчезающее искуство.

Я рекомендую или мобильные или вэб цели.

grim ★☆☆☆
()
Ответ на: комментарий от grim

Java/VB/PHP/Python самый лучший ЯП в мире!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


VB


PHP


Привет, зеленый друг. Но в остальном совет верен, спасибо.

netcat ★★
() автор топика
Ответ на: комментарий от AF

Просто скажи мне, где брать прогрессбар, меню, табы, тулбары, доки и т д?

http://www.w3schools.com/

Я пытаюсь понять, чего такого хорошего в WebKite для гуя!

Как минимум-ВСЕ.Глупо это отрицать.Возьми открой любой сайт смотри на гуй,и понимай что на QT(c++) ты такое в жизнь не сделаешь,а на вебките-откроешь html-ку и все работает.

e1641559
()
Ответ на: комментарий от grim

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

netcat ★★
() автор топика
Ответ на: комментарий от e1641559

Про гуй я тоже написал. Кстати, откудова такие толстые питоны в ваших краях? 40Мб... у меня под винду собранная числодробилка (с гуем) весит 1.6М сама dll + 2.1М python26.dll

AIv ★★★★★
()
Ответ на: комментарий от AF

Человек достоин благодарности, за то, что разворошил местное болото

Нет, не достоин. Скучно и жирно троллит, никаких тебе новшеств, кроме треугольных окон.

no-such-file ★★★★★
()
Ответ на: комментарий от AIv

Ну что ты, это очень талантливый юноша. Окончил хабрахабр с красным дипломом по специальности верстальщик–казуальщик–яйцечесальщик. И вот он пришел на лор нести свет и знание темным адетам скучных обоев и языков программирования.

anonymous
()
Ответ на: комментарий от e1641559

По указанной ссылке прогрессбар есть, меню - пишут не поддерживается не одним из мажорных браузеров. тулбар туда же, Табов нету! вобщем грустно все.

Глупо это отрицать

Ты ошибаешся! Глупо - это когда не умеешь изложить свои мысли.

AF ★★★
()
Ответ на: комментарий от no-such-file

Треугольные и всякие кривые окна были модны во времена расцвета делфей. Так что байан.

Скучно и жирно троллит

Других то нет

AF ★★★
()
Ответ на: комментарий от hobbit

Ну я, в общем-то, имел в виду POSIX-окружение :) Процесс разработки. Cygwin и MSYS и в подмётки не.

schizoid ★★★
()
Ответ на: комментарий от AF

меню - пишут не поддерживается не одним из мажорных браузеров

У тебя свой вебкит...в своем бинарнике...бинди райтклик в вебките через C++и событием из C++ вызывай javascript rightclickaction свое событие в джаваскрипте для показа меню.

тулбар туда же, Табов нету! вобщем грустно все.

Вот ты разом щас взял и открыл страшную тайну всему вебдванолю-А ТАБОВТО НЕТУ!!!!!

http://www.w3schools.com/html/html5_intro.asp

Там большая фиговина по центру-и она с табами,представь себе?

Вообще даже страшно-твоя наивность поражает.Все что ты видишь в интернете-все это оформление можно сделать в вебките,или ты кроме лора никуда не ходишь,я угадал?

e1641559
()
Ответ на: комментарий от AIv

у меня под винду собранная числодробилка (с гуем) весит 1.6М сама dll + 2.1М python26.dll

Теперь запусти эту гадость,и смотри как твоя «числодробилка» кушает сотни памяти.

e1641559
()
Ответ на: комментарий от AF

Треугольные и всякие кривые окна были модны во времена расцвета делфей

Кривые помню, была мода, но чтоб радикально треугольных, такого не встречал.

Других то нет

И то верно.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Кривые помню, была мода, но чтоб радикально треугольных, такого не встречал.

В фотошопе была анимированная треугольная заставка запуска.

e1641559
()
Ответ на: комментарий от e1641559

Все что ты видишь в интернете-все это оформление можно сделать в вебките

Ага, и на ассамблере можно все это сделать. Но будет ли это удобно для програмиста, вот в чем вопрос?

ты кроме лора никуда не ходишь,я угадал

Переходим на личности? Значит аргументы закончились! )

AF ★★★
()

Может быть я неосилятор, но когда на первом-втором курсе писал под винду, ибо про линукс не знал, это было настоящим адом. Однажды мне понадобился boost, я его собирал сутки.

actics
()
Ответ на: комментарий от AF

Переходим на личности? Значит аргументы закончились! )

Однако-вам надо быть модератором тут,на лоре,ибо только местные модераторы могут воспринять

ты кроме лора никуда не ходишь,я угадал

Как переход на личности.Один модератор так вообще «дурак» воспринял как оскорбление и забанил.

Не-такой лор уже не лор.

e1641559
()
Ответ на: комментарий от slackwarrior

это такой поток бреда, что можно заслушаться

Тоже пользуешься маком,и делаешь ОднуБольшуюКнопку?Все правильно делаешь.

e1641559
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.