LINUX.ORG.RU
Ответ на: комментарий от OldFatMan

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

Я использую С++ для графических и игровых приложений — тут просто нет ни одной альтернативы. Но для приложений, в которых много логики и важна скорость разработки, есть более подходящие языки.

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

мифы про сложность работы с указателями и выделения/освобождения памяти в C/C++ несколько преувеличивают эти самые сложности.

Утечки памяти, стабильно обнаруживаемые в десятилетних проектах - далеко не мифы.

Проблема не столько в языке, сколько в проектировании, неправильно подогнанном под язык (или наоборот).

Язык - инструмент. Не может быть плохим/хорошим, может быть его использование таковым.

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

> я не буду на этот вброс отвечать.

Ну ладно первое, а во втором утверждении где вброс-то? Или уже есть нетривиальный софт написанный на питоне третьем?

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

+1 приватные данные нужны только когда приходится работать с людьми, не понимающими, что делает этот код.

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

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

да вы запарили xD джава уже давно как не тормозит, вылазьте из своей криокамеры.

Ага, и я прекрасно это вижу по своему Netbeans... и ещё по тонне другого софта на жабе. Совсем не тормозит.

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

jEdit - говно, а IDE на то и IDE, там 100500 всяких процессов происходит, доки парсит, имена переменным придумывает, с какими-то серваками общается.

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

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

Приватные поля нужны потому что можно по ошибке их переопределить.

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

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

Ну тут спорить не стану - просто практика использования «безопасных языков» слишком мала (замшелый сишник). Но, вообще говоря, о каких ошибках речь? Если о синтаксических, то для начинающих возможно и легче (я уже давно этот этап прошёл). Если о логических, то очень сильно сомневаюсь, что «легче».

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

Не троллинга ради, а из любопытства: Про питон я уже понял (вполне приемлемый вариант), а какие «более подходящие языки» ты применяешь для «приложений, в которых много логики и важна скорость разработки»?

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

Или уже есть нетривиальный софт написанный на питоне третьем?

Какая связь между степенью готовности языка и написанным для него ПО? С языком всё в порядке, я на нём пишу когда хватает портированных либ. Если нет то я беру py2k.

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

> Приватные данные нужны тогда, когда один программист предоставляет другому свои интерфейсы.

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

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

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

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

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

> Какая связь между степенью готовности языка и написанным для него ПО?

Если никто не пишет на нем серьезного ПО, значит наверное не готов пока. Хотя, я искренне желаю чтоб это изменилось в ближайшее время, так как мне нравится вектор развития третьей ветки.

> С языком всё в порядке, я на нём пишу когда хватает портированных либ.

В том то и дело, что портированных либ катастрофически не хватает. И многие мейнтейнеры совершенно по этому поводу не чешутся, так как их питон2 устраивает всем.

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

с одного или двух подчеркиваний

Вот одного подчёркивания а) недостаточно потому что это не препятствует переопределению б) выглядит страшно.

В общем, в своём коде я на коллизии натыкался.

а где - для внутреннего пользования.

И где ты эти поля видишь? В доках приватные поля не фигурируют, как правило.

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

значит наверное не готов пока

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

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

> В доках приватные поля не фигурируют, как правило.

Я про либы без документации. Как-то интуитивно чувствую, чисто практический навык.

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

Утечки памяти, стабильно обнаруживаемые в десятилетних проектах - далеко не мифы.

Речь не о том. Если неосилятор клепает проект, в котором течёт память, то это проблема не ЯП, а функциональности мозга того самого неосилятора. Если внимательно прочесть те пару десятков страниц в K&R, которые описывают работу с указателями и выделение/освобождение памяти, а потом применять прочитанное на практике, то я не вижу в этом ничего сложного.

Проблема не столько в языке, сколько в проектировании, неправильно подогнанном под язык (или наоборот).

Верно. Я про то же говорил. Есть задача - проектируем модель и способ решения - выбираем ЯП.

Язык - инструмент. Не может быть плохим/хорошим, может быть его использование таковым.

Опять верно. И опять - я про то же и говорю. Если кто-то из моих комментов понял, что я против питона и исключительно за C/C++, то он понял абсолютно неправильно.

А насчёт «ЯП не может быть плохим/хорошим» - есть одно исключение: басик - это плохой язык.

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

> И что делать в этой ситуации я написал.

Работодатели не будут платить за портирование либ на питон 3.

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

Если никто не пишет на нем серьезного ПО

Что есть серьёзное ПО? Я пишу ПО для управления кластером (считай, облаками), это серьёзно?

Но не факт что всё закончится на питоне. И не потому что либ не хватает, а потому что нет нормальных гринлетов.

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

Работодатели не будут платить за портирование либ на питон 3.

Их проблемы. Работодатели вообще за много чего не платят, от чего сами и страдают. Легаси-код это вообще головная боль вне зависимости от ЯП и сферы деятельности. Т.е. код на py2 тоже устаревает и становится ненужным или сложно поддерживаемым.

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

Как-то интуитивно чувствую, чисто практический навык.

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

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

> Что есть серьёзное ПО?

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

> Я пишу ПО для управления кластером (считай, облаками), это серьёзно?

Откуда я знаю? Может и серьезно, а может хелловорлд с рюшечками.

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

> это не даёт гарантий

Тут глупо спорить, питон гарантий не дает. Это расплата за более лаконичный код, который приятней писать.

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

> Их проблемы.

Проблемы их, но и деньги их, и что мне делать за их деньги - решают именно они. И поверь, я в этом плане далеко не маргинал.

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

> И не потому что либ не хватает, а потому что нет нормальных гринлетов.

erlang не хочешь попробовать?

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

> Т.е. код на py2 тоже устаревает и становится ненужным или сложно поддерживаемым.

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

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

Верно. Я про то же говорил. Есть задача - проектируем модель и способ решения - выбираем ЯП.

А я не про то же.

Сейчас количество готового кода (библиотек/фреймворков) и фич типа C++0x на порядки больше, чем тогда, когда утверждение «выбирать язык под задачу» образовалось. Смысл выбирать язык под задачу исчез.

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

А насчёт «ЯП не может быть плохим/хорошим» - есть одно исключение: басик - это плохой язык.

А на Фортране можно писать на любом языке, да.

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

Вот это - наглое вранье

ты не так прочитал. Я не писал что код py2 устаревает. Я писал что код, написанный на py2 устаревает.

во вторую будут бекпортироваться все интересные фичи из третьего питона.

Откуда дровишки? Сам py2 тоже уже почти того: планов выпускать 2.8 нет. Погугли.

критерием значимости википедии

Вне зависимости от того что там написано у меня своя метрика. Не википедия же будет за меня код писать.

erlang не хочешь попробовать?

Хочу. Хотя бы для развития.

true_admin ★★★★★
()

Это что, правда? В языке нет protected свойтств и методов? Если это правда, то я огорчен.

для чего они тебе?

//какой толстый тред

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

и что мне делать за их деньги - решают именно они

Эээ, у кого на сколько узкое дышло. Я инструменты сам выбираю. Считается что дорос :)

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

Сейчас количество готового кода (библиотек/фреймворков) и фич типа C++0x на порядки больше, чем тогда, когда утверждение «выбирать язык под задачу» образовалось. Смысл выбирать язык под задачу исчез.

И что ты предлагаешь?

Если смысл утверждения «выбирать язык под задачу» исчез, то как по-твоему следует решать задачу? Исключительно сборкой из готовых кубиков? Не спорю: и такой метод даёт требуемый результат. Вот только не всегда. А иногда не совсем такой, какой был нужен.

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

А на Фортране можно писать на любом языке, да.

А это к чему?

Фортран - вполне подходящий инструмент для математических вычислений.

Вижу иронию, но не вижу объекта её применения.

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

> Я писал что код, написанный на py2 устаревает.

Если не поддерживать его, то да. Но ведь поддерживают! И код интерпретатора, и либы, и сторонние либы, и приложения!

> Откуда дровишки?

Погугли.

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

это не делает его частным, к нему всё равно можно обратиться ;) (зная имя класса, разумеется).

Меня тоже это напрягло... python хороший язык для скриптов... но ООП там IMHO, кривоватое. хотя и гибкое.

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

И после этого все кричат, что пых плодит быдлокодеров?

быдлокодеров не языки плодят *surprise*

shty ★★★★★
()

В языке нет protected свойтств и методов?

Они не нужны

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

Даже как-то расхотелось его учить что-то.

не учи, не надо

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

Если не поддерживать его, то да. Но ведь поддерживают!

Я не об этом. Ты писал о том что работодателю не интересно заниматься портированием кода. А я написал что работодателю вообще не интересно заниматься поддержкой того что есть. В большинстве случаев это делается «лишь бы хоть как-то работало». И ЯП тут совершенно не играет роли.

А те кто действительно поддерживают свои приложения уже портировали код на py3k. В остальных случаях просто никто не хочет заморачиваться или нет рук. Разве это поддержка?

В большинстве случаев начинаются сопли о том что «это не нужно, py2 идеален и так». А между тем разница между ветками существенная, это разница растёт с каждый день и она стоит портирования (моё имхо).

Погугли.

Не гуглится, даже pep нет. Это значит что на текущий момент никто даже не пытается этого делать.

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

И после этого все кричат, что пых плодит быдлокодеров? Ну, ну...

как человек имеющий опыт, говорю: php или ruby - фигня

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

Ну мне Python кажется большим быдлокодом чем PHP.

пилять, и питон и рнр - это языки программирования, а быдлокод - суть продукция одарённых индусов

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

Так всё-таки: как связать цитату Дийкстры с моей фразой о том, что «басик - плохой язык»? Басик - плох генетически, от самого корня. Кстати, тот же Дийкстра и о басике высказывался нелицеприятно, насчет безнадёжно испорченных мозгов студентов, его изучающих.

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

Питон вообще не предоставляет никаких костылей для защиты от неправильного использования методов и аттрибутов класса.

если у человека судьба яйца себе щемить постоянно дверью, замок его не спасёт

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

Это издевательство, а не реализация

Оно работает.

Если под «работает» понимать «имена искажаются», то да, работает. Если под «работает» понимать «доступ контролируется компилятором или рантаймом» - нет, не работает.

Для тех кому хочется больше welcome метаклассы и декораторы.

И чем они помогут? Функция dir перестанет работать?

В Питоне нет контроля доступа к полям и методам. Это общеизвестный и признанный (самим Гвидо) факт.

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

Я использую С++ для графических и игровых приложений

Где можно скачать демо-версии ваших графических и игровых приложений?

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

Си. Это Ъ и почти так же быстро, как жаба.

быстро работает, медленно отлаживается

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

И что ты предлагаешь?

Если смысл утверждения «выбирать язык под задачу» исчез, то как по-твоему следует решать задачу?

Тыканьем пальцем наугад в один из хорошо известных программисту ЯП :) Нужные библиотеки/расширения/фреймворки с большой вероятностью существуют.

К экстремальным случаям типа ПО для фобос-грунтов и подводных спутников правило не относится.

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