Баги есть везди, к сожелению. А вот неподкрепленное фактами утверждение весьма плохо говорит о вас, как о профи. Я знаю массу людей, которые отлично пишут на PHP, Ruby и Python-е. И каждый абсолютно нормально относится ко всем языкам на которых пишет. Ибо есть у каждого языка свой сахар и своя соль.
А то, что по Вашему — PHP — говно — означет лишь одно — вы мало писали на этом языке. А про баги — зайдите на багрепорты для пайтона и Руби например. И это нормально. Любой язык развивается, при этом могу и допускаются ошибки. Это и есть эволюция собственно ;)
Судя по моему опыту самолет — говно — нет ручки переключения скоростей, болтается ввер-вниз руль и куча каких-то тумблеров!!!
А кто вы? Вы великий программист и у вас есть с чем сравнивать? Вы пробовали делать проекты на разных языках и сравнивали их по какому-то праметру? Тогда напишите, а так увы — вы очередной «плохой» программист :)
P.S. Очень хорошо отношусь к Python-у, очень быстрый и качественный язык с отличной ООП архитектурой и весьма необычным подходом к блокам кода. Но, к сожелению, пока не такой попуялрный на хостингах (
Повторюсь еще раз :)
Хорошие программисты используют язык как ИНСТРУМЕНТ. Плохие — как ПОНТЫ ;)
На любом языке можно хорошо и достойно писать. Почему больше всего плохого кода на PHP вам ответит гугль — просто язык гораздо популярнее многих — соответсвенно народ на нем больше делает — отсюда следствие.
А то что лично Вы назвали в сврем посте плохим как язык PHP так и JavaScript ( который например не только мне очень нравится своим подходом к ООП ) — это говорит о вас как раз о том, к какой стороне программистов принадлежите Вы ;) Без обид ;)
Если уж делать шаблонизатор не нативный — то, по моему мнению, лучше делать это на том, что для этого предназначено — на XSLT, ан егородить велосипед. А если хочется чегото простого — то тогда юзать натив PHP
А кто с предыдущей моделью работал — может сказать — как нога поворотная себя ведет со временем? не разбалтывается ли? Пощупал предыдущую модель — весьма качественно сделано. и очень удобно. Вопрос вызвала только эта нога…
Ну я думаю если таковая тенденция и найдет применение — то пожалуй в основном в promo-сайтах, что собственно верно даже на этих примерах.
Во первых этож всеж таки флэш, на голом js врядли можно быдет сделать чтобы так красиво было.
Во вторых есть суть привычные вещи, и конечно можно сделать стол ножками кверху, и в принципе необычно будет, и даже привыкнуть можно, но массовое распространеие врядли получит — т.к. неудобно.
Обычно людей можно приучить когда чтото реально удобнее чем другое, здесь это весьма под вопросом. Сугубо ИМХО.
Мне так нравится, что в топ по PHP залазят люди, пишущие на других языках и пытаются его обосрать )
Не бывает ПЛОХИХ и ХОРОШИХ языков программирования. Бывают ХОРОШИЕ И ПЛОХИЕ ПРОГРАММИСТЫ.
Хорошие программисты используют язык как ИНСТРУМЕНТ. Плохие — как ПОНТЫ ;)
Хм, очень хороший вопрос )
Если я скажу по себе, то в качестве п.1 Это был справочник по JS + JS core ref :)
Знаю, что сейчас множество таких книжек есть. У меня народ очень хорошо отзывался про какуюто издательства O'Relly если мне не изменяет память. попробую потом узнать что за книжка.
По п.2. Этого очень много. Есть такая книженция праямо так и называется «Основы О.О.П.».
Я это читал людям по ( не поверите :) ) Wikipedia :)
Мое мнение, сугубо imho:
1) прочесть книжку по основам JS
2) прочесть книжку по ООП ( языконезаисимую )
3) полазить по zvon / xpoint.ru / xhtml.ru / rsdn.ru почитать основные фишки и проблемы у людей
4) начать писать задание, ибо практика ставит вопросы и находит на них ответы
>На рынке Aspire One доступен в четырёх цветовых решениях: «голубой сапфир», «белая морская раковина», «золотисто-коричневый» и «розовый коралл».
Мне вот всегда инетересно, а почему перестал быть модным черный? Я например считаю что бук должен быть из нормального черного или белого пластика, причем не крашенного…
А здесь видимо приемлемым для меня решением будет «Розовый коралл»: D
На самом деле я пощупал Acer Aspire, MSI Wind и ASUS.
Пока что по качеству пластика мне больше всего понравился ASUS. Там главное преимущество — он НЕКРАШЕННЫЙ. Это значит что он не будет облезать, обтираться и т.д.
А на мой вопрос — почему сейчас красят все — мой знакомый, работающий на заводе, производящем гранулы пластика ответил очень просто — для удешевления. Оказывается получить хороший однородный черный пластик ( ну или любой однотонный ) — достаточно сложная задача :(
Прогресс однако :(
Во-первых у Вас получился не мак, а черти знает что.
Уж если надо мак — то и надо покупать мак, ибо это идеология железа + система. А так можно было смело ставить хакинтош на обычный писюк и не мучаться.
Во-вторых писать:
>Эксперименты с Линуксом показали, что до десктопов он пока не дорос, да и с эстетической точки зрения мне он >не подходил — сглаживание шрифтов некрасивое, «для галочки», выбор собственно шрифтов — тоже
Может только человек, который не пробовал даже разбираться с настройкой Linux. И вместо того чтобы хотябы почитать форумы ( а это все разжёвано очень сильно, особенно про Убунту, причем на русском ), Вы показали свое неумение и нежелание разбираться в чем либо. Звучит примерно так — Истрибитель СУ — г##ный истрибитель — я раньше водил машину — и все было ок, а тут даже тронуться с места не смог.
Когда то на заре своей работы в WEB среде я написал свой шаблонизатор, парсился регспами, вставляя заместо себя модули, подключаемые к шаблонизатору... Было круто, объектно и удобно...
Потом проникся XML+XSLT, потом много чем еще.
Исходя из своего опыта могу сказать следующее, по пунктам:
1) Если требуется "простенький" шаблонизатор, надо юзать php и не морочить себе голову, ибо он очень просто решает большинство проблем, код приемственен и ему проще обучить, чем обучать php + шаблонизатор ( в этом случае к знаниям php + чтотоSQL + html + css добавляется необходимость знания шаблонизатора
2) Если требуется MVC, то лучше всего юзать XML + XSL - ибо это по стандарту и ОЧЕНЬ мощно. Со скоростью проблем нет, чтобы там не говорили. Но стоит юзать лишь на PHP >=5 ( изза процессора преобразований, ибо саблотрон это жесть с большой буквы )
3) Если требуется модульность, что бывает в случае, когда у вас мощная CMS и XML-ом вот ну ни как не обойтись ( очень мало вероятно при грамотном подходе и с умением вставлять результат выполнения ф-й на PHP ) то тогда да - шаблонизатор.
Единтсвенно, когда шаблонизатор может быть более оправдан чем XSL преобразование - это в случае ОЧЕНЬ большого и сложного проекта, где обширная CMS и много людей, отвечающих за программинг например, ибо уменее правильно писать на XSL - это достаточно редкий скилл. XSL по своей витиеватости очень похож на регекспы и башка частенько трещит у неподготовленного ( да и у подготовленного тоже ). В этом случае кастомный вариант лучше - ибо он обычно четко структизирован и документирован, и имеет меньше сущностей - т.е. код на нем для данной группы разработчиков будет более легким и лаконичным.
Однако я против "стандартных" тепмлейторов, ибо считаю что под серъезный проект лучше написать "свой" кстомный. Почему? изза лаконичности и заточенности. Всежтаки публичные шаблонизаторы не отличаются лаконичностью, ибо уходят в сторону универсальности. И это правильно ;)
Как я уже писал когда-то, надо всегда смотреть на что ориентирован сайт.
Большинство современных сайтов без JS будут не только не подобающе работать,
они не будут работать вовсе.
Делать надо исходя из затрат на поддержку при
отключении JS. Есть старое правило - "Цель оправдывает средства".
Если Ваш сайт использует JS для каких-то не сильно сложных преобразований,
и теоритически он можети запросто без него обойтись, ну например реализован просмотр
галереи изображений через JS, однако можно сделать, чтобы при щелчке по preview
картинка открывалась просто в новом окне, а при наличае JS запускалась бы галерея просмотра - то тогда да - совсем просто реализовать такой вариант, и его надо и стоит делать.
Если Вы планируете, что сайт может быть просмотрен через мобильное устройство - то
в этом случае тоже надо учитывать возможность отключения JS.
Если же нет, и Вы планируете что просмотр данного сайта будет идти через PC
или же сайт вообще является веб аппликацией - то смысл убиваться за то, чтобы работало без JS нет вообще. Вы много видели браузеров на компьютерах, где отключен JS? Другое дело, что хорошим тоном было бы предупредить человека про JS, если же это все такие случилось.
А можно маленький вопрос?
А зачем так сложно?
Уж если делать простенький XML парсер - достаточно реализовать обыкновенный SAX parser и ВСЕ!
Безо всякой магии :)
Я не в коем случае не хочу сказать что сделано чтото плохо - конечно нет. Но просто существует гораздо более простой спосою. Под PHP я парсер не написал - не надо было, а вот под JS пожалуйста пример:
proto.saxParser = function() {
}
proto.saxParser.prototype.parse = function( dom, ignoreParent ) {
if ( ignoreParent ) {
if ( dom.documentElement ) {
this.parseRecursive( dom.documentElement );
} else if ( dom.tagName ) {
for ( var i = dom.firstChild; i; i = i.nextSibling ) this.parseRecursive( i );
}
}
else this.parseRecursive( dom, ignoreParent );
}
proto.saxParser.prototype.parseRecursive = function( dom ) {
if ( dom.documentElement ) {
this.startDocument( dom );
this.parseRecursive( dom.documentElement );
this.endDocument();
} else if ( dom.tagName ) {
this.startElement( dom );
for ( var i = dom.firstChild; i; i = i.nextSibling ) this.parseRecursive( i );
this.endElement( dom );
}
else this.characters( dom );
}
А то, что по Вашему — PHP — говно — означет лишь одно — вы мало писали на этом языке. А про баги — зайдите на багрепорты для пайтона и Руби например. И это нормально. Любой язык развивается, при этом могу и допускаются ошибки. Это и есть эволюция собственно ;)
А кто вы? Вы великий программист и у вас есть с чем сравнивать? Вы пробовали делать проекты на разных языках и сравнивали их по какому-то праметру? Тогда напишите, а так увы — вы очередной «плохой» программист :)
P.S. Очень хорошо отношусь к Python-у, очень быстрый и качественный язык с отличной ООП архитектурой и весьма необычным подходом к блокам кода. Но, к сожелению, пока не такой попуялрный на хостингах (
Хорошие программисты используют язык как ИНСТРУМЕНТ. Плохие — как ПОНТЫ ;)
На любом языке можно хорошо и достойно писать. Почему больше всего плохого кода на PHP вам ответит гугль — просто язык гораздо популярнее многих — соответсвенно народ на нем больше делает — отсюда следствие.
А то что лично Вы назвали в сврем посте плохим как язык PHP так и JavaScript ( который например не только мне очень нравится своим подходом к ООП ) — это говорит о вас как раз о том, к какой стороне программистов принадлежите Вы ;) Без обид ;)
попробуйте — работает ;)
Во первых этож всеж таки флэш, на голом js врядли можно быдет сделать чтобы так красиво было.
Во вторых есть суть привычные вещи, и конечно можно сделать стол ножками кверху, и в принципе необычно будет, и даже привыкнуть можно, но массовое распространеие врядли получит — т.к. неудобно.
Обычно людей можно приучить когда чтото реально удобнее чем другое, здесь это весьма под вопросом. Сугубо ИМХО.
Не бывает ПЛОХИХ и ХОРОШИХ языков программирования. Бывают ХОРОШИЕ И ПЛОХИЕ ПРОГРАММИСТЫ.
Хорошие программисты используют язык как ИНСТРУМЕНТ. Плохие — как ПОНТЫ ;)
Если я скажу по себе, то в качестве п.1 Это был справочник по JS + JS core ref :)
Знаю, что сейчас множество таких книжек есть. У меня народ очень хорошо отзывался про какуюто издательства O'Relly если мне не изменяет память. попробую потом узнать что за книжка.
По п.2. Этого очень много. Есть такая книженция праямо так и называется «Основы О.О.П.».
Я это читал людям по ( не поверите :) ) Wikipedia :)
1) прочесть книжку по основам JS
2) прочесть книжку по ООП ( языконезаисимую )
3) полазить по zvon / xpoint.ru / xhtml.ru / rsdn.ru почитать основные фишки и проблемы у людей
4) начать писать задание, ибо практика ставит вопросы и находит на них ответы
Мне вот всегда инетересно, а почему перестал быть модным черный? Я например считаю что бук должен быть из нормального черного или белого пластика, причем не крашенного…
А здесь видимо приемлемым для меня решением будет «Розовый коралл»: D
На самом деле я пощупал Acer Aspire, MSI Wind и ASUS.
Пока что по качеству пластика мне больше всего понравился ASUS. Там главное преимущество — он НЕКРАШЕННЫЙ. Это значит что он не будет облезать, обтираться и т.д.
А на мой вопрос — почему сейчас красят все — мой знакомый, работающий на заводе, производящем гранулы пластика ответил очень просто — для удешевления. Оказывается получить хороший однородный черный пластик ( ну или любой однотонный ) — достаточно сложная задача :(
Прогресс однако :(
Уж если надо мак — то и надо покупать мак, ибо это идеология железа + система. А так можно было смело ставить хакинтош на обычный писюк и не мучаться.
Во-вторых писать:
>Эксперименты с Линуксом показали, что до десктопов он пока не дорос, да и с эстетической точки зрения мне он >не подходил — сглаживание шрифтов некрасивое, «для галочки», выбор собственно шрифтов — тоже
Может только человек, который не пробовал даже разбираться с настройкой Linux. И вместо того чтобы хотябы почитать форумы ( а это все разжёвано очень сильно, особенно про Убунту, причем на русском ), Вы показали свое неумение и нежелание разбираться в чем либо. Звучит примерно так — Истрибитель СУ — г##ный истрибитель — я раньше водил машину — и все было ок, а тут даже тронуться с места не смог.
http://www.zvon.org/xxl/XPathTutorial/General_rus/examples.html
сам XSLT
http://www.zvon.org/xxl/XSLTutorial/Output_rus/index.htm
Не забудь перед прочтением прочитать все по XML - ибо он - основа.
Потом проникся XML+XSLT, потом много чем еще.
Исходя из своего опыта могу сказать следующее, по пунктам:
1) Если требуется "простенький" шаблонизатор, надо юзать php и не морочить себе голову, ибо он очень просто решает большинство проблем, код приемственен и ему проще обучить, чем обучать php + шаблонизатор ( в этом случае к знаниям php + чтотоSQL + html + css добавляется необходимость знания шаблонизатора
2) Если требуется MVC, то лучше всего юзать XML + XSL - ибо это по стандарту и ОЧЕНЬ мощно. Со скоростью проблем нет, чтобы там не говорили. Но стоит юзать лишь на PHP >=5 ( изза процессора преобразований, ибо саблотрон это жесть с большой буквы )
3) Если требуется модульность, что бывает в случае, когда у вас мощная CMS и XML-ом вот ну ни как не обойтись ( очень мало вероятно при грамотном подходе и с умением вставлять результат выполнения ф-й на PHP ) то тогда да - шаблонизатор.
Единтсвенно, когда шаблонизатор может быть более оправдан чем XSL преобразование - это в случае ОЧЕНЬ большого и сложного проекта, где обширная CMS и много людей, отвечающих за программинг например, ибо уменее правильно писать на XSL - это достаточно редкий скилл. XSL по своей витиеватости очень похож на регекспы и башка частенько трещит у неподготовленного ( да и у подготовленного тоже ). В этом случае кастомный вариант лучше - ибо он обычно четко структизирован и документирован, и имеет меньше сущностей - т.е. код на нем для данной группы разработчиков будет более легким и лаконичным.
Однако я против "стандартных" тепмлейторов, ибо считаю что под серъезный проект лучше написать "свой" кстомный. Почему? изза лаконичности и заточенности. Всежтаки публичные шаблонизаторы не отличаются лаконичностью, ибо уходят в сторону универсальности. И это правильно ;)
Большинство современных сайтов без JS будут не только не подобающе работать,
они не будут работать вовсе.
Делать надо исходя из затрат на поддержку при
отключении JS. Есть старое правило - "Цель оправдывает средства".
Если Ваш сайт использует JS для каких-то не сильно сложных преобразований,
и теоритически он можети запросто без него обойтись, ну например реализован просмотр
галереи изображений через JS, однако можно сделать, чтобы при щелчке по preview
картинка открывалась просто в новом окне, а при наличае JS запускалась бы галерея просмотра - то тогда да - совсем просто реализовать такой вариант, и его надо и стоит делать.
Если Вы планируете, что сайт может быть просмотрен через мобильное устройство - то
в этом случае тоже надо учитывать возможность отключения JS.
Если же нет, и Вы планируете что просмотр данного сайта будет идти через PC
или же сайт вообще является веб аппликацией - то смысл убиваться за то, чтобы работало без JS нет вообще. Вы много видели браузеров на компьютерах, где отключен JS? Другое дело, что хорошим тоном было бы предупредить человека про JS, если же это все такие случилось.
А зачем так сложно?
Уж если делать простенький XML парсер - достаточно реализовать обыкновенный SAX parser и ВСЕ!
Безо всякой магии :)
Я не в коем случае не хочу сказать что сделано чтото плохо - конечно нет. Но просто существует гораздо более простой спосою. Под PHP я парсер не написал - не надо было, а вот под JS пожалуйста пример:
proto.saxParser = function() {
}
proto.saxParser.prototype.parse = function( dom, ignoreParent ) {
if ( ignoreParent ) {
if ( dom.documentElement ) {
this.parseRecursive( dom.documentElement );
} else if ( dom.tagName ) {
for ( var i = dom.firstChild; i; i = i.nextSibling ) this.parseRecursive( i );
}
}
else this.parseRecursive( dom, ignoreParent );
}
proto.saxParser.prototype.parseRecursive = function( dom ) {
if ( dom.documentElement ) {
this.startDocument( dom );
this.parseRecursive( dom.documentElement );
this.endDocument();
} else if ( dom.tagName ) {
this.startElement( dom );
for ( var i = dom.firstChild; i; i = i.nextSibling ) this.parseRecursive( i );
this.endElement( dom );
}
else this.characters( dom );
}
proto.saxParser.prototype.startDocument = function( doc ) {
}
proto.saxParser.prototype.startElement = function( el ) {
}
proto.saxParser.prototype.endElement = function( el ) {
}
proto.saxParser.prototype.characters = function( el ) {
}
proto.saxParser.prototype.endDocument = function() {
}
Все :) Весь парсер. Смысл я думаю объяснять не надо ) С задачей XML => Array справляется на ура и очень быстро )