Фрилансер У.
248 сообщений
#15 лет назад
Цитата ("akkort"):
что вменяемая реализация большинства алгоритмов (это касается не только криптографии) собственными средствами языка невозможна.

Этого от языка не требуется. Множество алгоритмов реализовано в функциях и модулях.
Цитата ("akkort"):
это же надо додуматься - возвращать 0 и FALSE как разные результаты.

0 - строка начинается в нулевой позиции
false - совпадений нет
Тимур Ч.
300 сообщений
#15 лет назад
Цитата ("werewolf"):
Цитата ("akkort"):
что вменяемая реализация большинства алгоритмов (это касается не только криптографии) собственными средствами языка невозможна.

Этого от языка не требуется. Множество алгоритмов реализовано в функциях и модулях.

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

Цитата ("werewolf"):
Цитата ("akkort"):
это же надо додуматься - возвращать 0 и FALSE как разные результаты.

0 - строка начинается в нулевой позиции
false - совпадений нет

и ради этого введен еще один оператор сравнения - мало было ==, добавили ===
"равно" и "конкретно равно". настоящий пацанский язык!
Кирилл Е.
2817 сообщений
#15 лет назад
Akkort который язык тогда хорош?
Тимур Ч.
300 сообщений
#15 лет назад
Цитата ("kirilev"):
Akkort который язык тогда хорош?

конечно ассемблер!
Дмитрий Васильковский
756 сообщений
#15 лет назад
Цитата ("akkort"):
Цитата ("kirilev"):
Akkort который язык тогда хорош?

конечно ассемблер!

+1
Николай Г.
601 сообщение
#15 лет назад
Цитата ("kirilev"):
Akkort который язык тогда хорош?

На правах рекламы - D=) Ассемблерные вставки там использовать можно)
Оффтопик
К слову, а посоветуйте чего-нибудь почитать по асеммблеру для x86-64? Желательно на русском, на инглише нашел...
Кирилл Е.
2817 сообщений
#15 лет назад
Цитата ("dervinar"):
D=) Ассемблерные вставки там использовать можно)

В паскале и в Си тоже можно ).

Цитата ("dervinar"):
чего-нибудь почитать по асеммблеру для x86-64

Лично начинал учить ассемблер с книги "Зубков С.В. Assembler для дос, виндовс, юникс", книга помоему внимания достойна )
Тимур Ч.
300 сообщений
#15 лет назад
dervinar, по 64 битам сам не нашел ничего путного. взял доки интеловские + дизассемблер + компиляция С с ассемблерным листингом
там от 32 бит отличий не очень много. ну есть халявные 8 регистров, ну размерность больше, ну пропало несколько команд редких, а в остальном тот же асм
Фрилансер У.
248 сообщений
#15 лет назад
Цитата ("akkort"):
ага. а если его нету в модулях - его невозможно использовать. о том и речь - начали делать скрипт для школьников, потом появился аппетит на развитие, а реализовать многие нужные вещи просто нельзя - начали клепать модули.

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

Цитата ("akkort"):
и ради этого введен еще один оператор сравнения - мало было ==, добавили ===
"равно" и "конкретно равно". настоящий пацанский язык!

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

Насчет enRuPT, реализация xxtea:

Пишется, выходит по объему кода больше, но напомню, потребность в таком возникает редко, следовательно такая растановка приемлема.
Тимур Ч.
300 сообщений
#15 лет назад
Цитата ("werewolf"):
Цитата ("akkort"):
ага. а если его нету в модулях - его невозможно использовать. о том и речь - начали делать скрипт для школьников, потом появился аппетит на развитие, а реализовать многие нужные вещи просто нельзя - начали клепать модули.

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

В других языках программисты могут подключать код на уровне исходников или библиотек, причем эти библиотеки идут вместе с основной программой. для php программист ограничен теми модулями, которые установлены у хостера. и как правило у хостера стоят не все модули, описанные в документации. после этого в исходниках на php (например, движки для сайтов или форумах) начинают плодиться многоэкранные конктрукции "если установлен этот модуль, то... иначе"

Цитата ("werewolf"):
Цитата ("akkort"):
и ради этого введен еще один оператор сравнения - мало было ==, добавили ===
"равно" и "конкретно равно". настоящий пацанский язык!

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

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

Цитата ("werewolf"):
Насчет enRuPT, реализация xxtea:

Пишется, выходит по объему кода больше, но напомню, потребность в таком возникает редко, следовательно такая растановка приемлема.

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

сейчас половина алгоритмического программирования на php - это соревнование с интерпретатором, превратит эта сволочь тихо число в строку, а целое в плавающее или нет.
Фрилансер У.
248 сообщений
#15 лет назад
Цитата ("akkort"):
вот мы и пришли к тому, с чего начался в php бардак - нетипизированные данные. не было бы его - не было бы половины проблем.

Ну и не было бы той простоты, что есть сейчас.

Цитата ("akkort"):
но ведь школьнику проще писать на языке, в котором нет типов

Мне проще, значит я школьник, так?
Типы-то есть.
Тимур Ч.
300 сообщений
#15 лет назад
Цитата ("werewolf"):
Цитата ("akkort"):
вот мы и пришли к тому, с чего начался в php бардак - нетипизированные данные. не было бы его - не было бы половины проблем.

Ну и не было бы той простоты, что есть сейчас.

Это вредное заблуждение - считать простоту антиподом гибкости.
Например, в VB по умолчанию переменным присваивается нетипизированный Variant, но никто не мешает объявить тип явно - as integer, as string
Причем, Variant появился позднее, когда программированию стали учиться школьники. Что побудило сделать в php все типы как variant - понятно. Непонятно что мешало сделать явное указание типа. Смешно, но встроенный в Excel/word/access бейсик по гибкости сильнее, чем php.

Цитата ("werewolf"):
Цитата ("akkort"):
но ведь школьнику проще писать на языке, в котором нет типов

Мне проще, значит я школьник, так?
Типы-то есть.

foo($a,$b)
какого они тут типа? типы есть у интерпретатора. а программисту остается только догадываться о текущем типе переменной, основываясь на своем опыте.

ситуация с типами в php особенно доставляет на примере костылей в виде функции int32 из приведенного вами исходника xxtea. даже представить страшно, что будет происходить при вызове int32(10000000*10000000)
Юрий Песков
338 сообщений
#15 лет назад
akkort, а ведь топикстатер просил не кидаться какашками...
Юрий Степанец
96 сообщений
#15 лет назад
К вопросу о востребованности направлений программирования на веблансере
Цитата:

Web-программирование 281
Программирование 253

При этом, задачи программирования могут возникать и в таких категориях как
Цитата:

Создание web-сайта "под ключ" 88
Системы управления контентом 56
Flash 53
Интернет-магазины 30

То есть, по направлениям имеем
программирование для Web (до) 508 проектов - реально меньше, т. к. часть можно решить не забираясь в код тех же CMS например
программирование 253, причем из них
Скрипты / Web-приложения 160

Из 1045 проектов на данный момент больше половины - для Веб. В общем, логично, что Вебе больше половины работы - для Веба.

В силу разных причин в Вебе распространен PHP. Не только он, но найти хостинг на котором поддерживается что-то другое и не поддерживается PHP, ИМХО непросто. Я не встречал.

Итого:
1) Работы для программиста в Вебе больше для Веба.
2) Если взяться за PHP - работа будет

Более подробный анализ проводить не буду, но в общем мое ИМХО такое.
Это при том, что я PHP почти не знаю, а во фрилансе больше работаю на ActionScript для Flash.

UPD:
И, кстати, программируя для Flash, все равно пришлось разбираться в PHP для написания админки и обмена с базой MySQL.
Юрий В.
1013 сообщений
#15 лет назад
Цитата ("kirilev"):
вот.. это думаю потому, что некоторые персоны убеждены, что достаточно синтаксис подучить - и дело в шляпе - можно обзывать себя программистом ..

нет. Я написал почему - потому что я постоянно работаю с пхп и перебираю много скриптов.
С паскалем, си и другими "неинетовскими" языками встречаюсь крайне редко.

Пусть как хотят так себя и называют. Немного не понимаю.. при чем тут пхп и как кто себя называет.
Юрий В.
1013 сообщений
#15 лет назад
Цитата ("akkort"):
Цитата ("kirilev"):
Akkort который язык тогда хорош?

конечно ассемблер!


да чего ж ассемблер.. Давайте вспомним машинные коды с перфокартами. Там вообще все можно сделать..
Напишите на Шарпе какое нибудь приложение, а затем такое же на ассемблере.
В 10ку если не больше будет временных затрат меньше.
А платить за то "что вы сделали на ассемблере" никто не будет. Т.к. важен конечный эффект.

Время программиста чаще всего дороже, нежели расходы технику (побыстрее) - поэтому и пишутся языки, на которых быстрей и эффективней можно написать.
Владимир Ф.
1322 сообщения
#15 лет назад
Цитата:
Поясните, пожалуйста. Это действительно настолько значимо, возможность начать работать через 10 минут после появления желания "а не написать ли мне hello world"?...
Мне это просто принципиально непонятно, я в общем то и на D hello world скомпилил через 15 минут после того, как скачал компилятор, из которых 10 потратил на чтение исходников стандартной библиотеки...
Да и вообще - ну а в чем именно я неправильно интерпретировал ваши слова? Кому, кроме начинающего "школьника" - имеется в виду совсем неопытный программист, может быть настолько значим минимум времени, что это является основополагающим фактором при выборе языка?...


Когда php набирал популярность думаю не было D (по крайней мере либ для веба). Был perl + cgi модуль (+ всякие mason и TT которые еще и поставить надо было и поучить, activestate или strawberry perl кстати тогда уже были? А то еще и *nix прибавляем к этому всему) и ASP (не .NET, жуть вообще). ява вторая только только появилась. Быстро став популярным из-за отсутствия должной конкуренции - породил замкнутый круг "язык популярен-много готового кода-много обучалок-большое комьюнити-дешевый хостинг-язык популярен". равно как когда-то в него попал windows "популярна-много программ-много драйверов под все-нет проблем с внешними устройствами типа камер итд.-у соседа стоит при случае поможет-популярна". И можно сколько угодно говорить о том что "это все ущербно и для школоты"

dervinar, вы ответьте пожалуйста насчет того вопроса по поводу "почему perl хорошо, а php плохо (в контексте web)".
Юрий В.
1013 сообщений
#15 лет назад
Цитата ("vovan_f"):
Когда php набирал популярность


что то вспомнилось.. то время. Тогда это был новый язык и все воспринимали что за ним будущее. так и получилось. думаю более 90% сайтов сделаны на нём.
Николай Г.
601 сообщение
#15 лет назад
Цитата ("vovan_f"):
dervinar, вы ответьте пожалуйста насчет того вопроса по поводу "почему perl хорошо, а php плохо (в контексте web)".

Если желаете, можем продолжить именно эту дискуссию в отдельной теме.
Еще раз призываю всех, не надо опускать PHP, равно как и прочие языки программирования.
Итого, подытожив вышесказанные доводы, в этой теме были высказаны следующие причины становления PHP как де факто языка, на котором по умолчанию пишутся все сайты.
1) За счет примитивности и расширяемости. Научиться писать на нем может любой идиот, а в последствии освоить и более сложные конструкции. - ну я комментировать не буду, мнение есть мнение.
2) За счет легкости "быстрого старта". Его легко установить, не надо ничего настраивать, можно сразу же написать hello world. - несколько перекликается с первым мнением... Скорее это может послужить причиной для школьника "почему я начал писать на PHP, а не на С++", но врятли может быть серьезным доводом для программиста, делающего осмысленный выбор в сторону какого-то языка.
3) За счет инерционности. Для него УЖЕ написана куча документации, в которой все разжевывется до мельчайших подробностей, куча полезных утилит, на нем построены куча фреймворков и даже готовых CMS, да и вообще сообщество очень развито. пожалуй единственное неоспоримое преимущество языка, но неужели все веб-программисты настолько привыкли работать по принципу, если надо решить какую-то задачу, то:
Цитата:
Спросить у знакомых где эта задача уже решена. Если узнал - стырить ее решение.
Если не узнал - Спросить у гугла где эта задача уже решена. Если узнал - стырить ее решение.
Если не узнал - Спросить на форумах (не менее 5) где эта задача уже решена. Если узнал - стырить ее решение.
Елс - "Блин, придется работать. так что мне потребуется. мне потребуется... " то что потребуется - рекурсивно с первого пункта.




Может все-таки есть еще какие-то доводы в пользу языка?..
Владимир Ф.
1322 сообщения
#15 лет назад
Цитата:
Если желаете, можем продолжить именно эту дискуссию в отдельной теме.

Дискутировать на эту тему не собираюсь. Не спец в болтологии. Просто ваше мнение интересно. Хоть в личку напишите если не затруднит.
Цитата:

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

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

А насчет принципов этих, так по моему это великолепно. зачем изобретать велосипед? А главное кто будет платить за велосипед?