Рейтинг
+1.19
голосов:
1
avatar

Программирование  

Что такое веб-программирование

Спасибо заметке MpaK-а, которая подтолкнула написать меня следующее.

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


( Читать дальше )

Чем занять себя на прокачку скиллов?!

Уже не в первый раз получаю мессаджи от начинающих программеров, ребятам не хватает вдохновения в плане проектов для прокачки своих PHP+MySQL+JS скиллов.

Понятная проблема, сам никогда не маялся с такой вещи, со времен еще Basic и Assembler программирования под ZX-Spectrum я просто, что-то видел, например офигенный красоты загрузчик, брал его и разбирал, понимал как работает и потом делал точно такой же. Или просто сразу же делал нечто такое же по своей идеи. Игры. Так же видел Dizzy например и хотелось сделать такое же.

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

Конечно тут можно покривить носики и сказать: "фу-у-у-". Типа очередное изобретение велосипеда на коленке. Разумеется надо ко всему подойти с умом. Я бы даже сейчас например начав писать блог не стал например писать его с нуля на том же PHP, с нуля создавая классы, структуру, роутинг, датамаппер и т.п.

( Читать дальше )

Красивые адреса - изобретаем велосипед, опираясь на современные тенденции

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

Минусы очевидны:
1) SELECT по текстовому полю.
2) В случае нескольких баз данных мы не можем предположить какая из них содержит нужную нам запись.
3) Дополнительное идентификационное поле в то время, как уже есть основное, обычно, ID.



( Читать дальше )

Онлайн-трансляция РИТ-2010 топик-ссылка

В 12 по Уфе начинается конференция Российские Интернет Технологии 2010. Онлайн-трансляция из двух залов уже доступна по ссылке.

MD5, SHA1, UNIQID для генерации уникальных значений

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

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

( Читать дальше )
  • +1
  • 7 апреля 2010, 13:43
  • MpaK
  • 6+6

CodeIgniter в 2ой версии переходит в Mercurial под крылом сервиса BitBucket!

Странная конечно новость и так последнее время все в ожидании выхода CI 2, так как уже подсмотрели частички в релизах ExpressionEngine 2.

В целом вот EllisLab переходит на Mercurial, Assembla, BitBUcket и CodeIgniter 2 теперь на BitBucket.

Переход на Mercurial в целом понятен, хотят тянуть разные ветки децентрализованно. Только почему не GIT, этого я не понял, кроме общего врага в сабвершене и то, что они больше в команде «любят» платонически Меркуриал — больше объяснений нет.


( Читать дальше )
  • +1
  • 11 марта 2010, 22:37
  • MpaK
  • 7+7

JetBrains Web IDE Public Preview топик-ссылка

JetBrains WebStorm & PhpStorm are two Integrated Development Environments for web programming, providing a unique user experience for editing HTML, CSS, JavaScript, XMl, as well as for working with VCS and SQL. PhpStorm is also a professional PHP IDE offering advanced PHP development support.

CodeIgniter + HMVC маленький багфикс

Знаете, есть маленькая неприятность обнаруженная совсем не вовремя.

В общих чертах у последнего CodeIgniter 1.7.2 загруженного из SVN и HMVC библиотеки для модульности (вы же надеюсь её используете если работаете с CI?) при РУЧНОЙ загрузки и подключении к базе данных есть баг, просто не грузится класс и не создается подключение.

Как показало «расследование» с пристрастием, ошибку содержит именно HMVC.

Давайте исправим. Открываем наш файл Controller.php из папки application/libraries нашего приложения. находим
public function database($params = '', $return = FALSE, $active_record = FALSE) {

и правим на
public function database($params = '', $return = FALSE, $active_record = <b>NULL</b>) {


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

дальше уничтожаем строку

if (class_exists('CI_DB', FALSE) AND $return == FALSE AND $active_record == FALSE)
    return;


и заменяем на вот эти две строки

$CI =& get_instance();
if (class_exists('CI_DB', TRUE) AND ($return === FALSE) AND ($active_record === NULL) AND isset($CI->db) AND is_object($CI->db)) return FALSE;


Всё, можно смело запускать и радоваться загружая свои любимые профили баз как захочется
$this->load->database( 'production' );

Ускорение PHP скриптов (для нуба)

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


( Читать дальше )

Как удалить из строки все буквы кроме некоторых?

Иногда возникает задача удалить из строки все символы кроме некоторых. На мой взгляд для этой задачи регулярные выражения в самый раз задуманы.
для Oracle
select regexp_replace('АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя','[^кя]','',1,0,'i') from dual;

Для углубления в тему регулярных выражений в Oracle следует почитать это.

для C#

Regex r = new Regex("[^кя]*",RegexOptions.IgnoreCase);
Console.WriteLine(r.Replace("АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя", ""));

Для .Net кодеров полезно прочитать — Регулярные выражения в .NET Framework