GrAndSE’s blog

Думки, думки і ще раз думки

Прощавай dbSimple

Є така команда dklab. На мою думку, команда досить непогана. Непогана хоча б тим, що у вільний доступ викладають деякі свої розробки. І розробки ці серед програмістів набули досить великої популярності. Я стикався з чотирма їх бібліотеками, а саме JsHttpRequest, dkLab_Cache, dbSimple, Denver.

Перша бібліотека з наведеного мною переліку досить популярна, як бібліотека для роботи з AJAX. Одна з причин – функції перекодування кирилічних текстів при роботі з ajax. Ті хто працівав з російськомовними рядками, юнікодом у зв’язці php + ajax мабуть неожноразово стикались з такої проблемою. Однак моє недовге знайомство з цією бібліотекою скінчилось більше півроку тому, коли я написав свою бібліотечку для роботи з ajax, яка мене цілковито задовольняє, а вирішення проблеми з кирилицею я знайшов своє. Доречі про свою біліотеку я вже писав :)

Система кешування мене просто вбила своєю старомодністю та заплутаністю і я вирішив знову піти своїм шляхом, особливо з огляду на свій же framework.

Denver доволі довго ходив в мене у фаворитах серед інструментів для розробки під Windows. Однак, коли я вирішив остаточно і безповоротно перебратись під Linux разом з тим покинув я і Denver “десь там в минулому”. І тепер, попрацювавши з nginx та lighttpd, не можу нормально дивитись ні на apache, ні тим більше на такий кухонний комбайн як Denver.

Однак dbSimple довго тримався як бібліотека в моєму framework для роботи з БД. А чом би й ні? Тут тобі й плейсхолдери, і макроси з запитах, і кешування підготовлених даних для деких запитів, і деякий захист від лінивого програміста, який забуває перевіряти дані і боротись з SQL Injection, і можливість обробки помилок, і підтримка трьох БД, і автоматична конвертація даних у масив, чи дещо інше за вибором (наприклад в одну змінну для вібірки однієї комірки з БД). Ну просто казка..

Перший недолік з яким я зіштовхнувся – невміння нормально працювати з іменами вигляду tableName.fieldName. Це я вибачив, дописав дещо руками тай забув про це думати. А тепер вилізла також необхідність девчому підправляти різницю в діалектах різних БД, та різницю в методах роботи з різними БД, щоб не втрачати універсальність мого framework. І тут я постав перед дилемою: правити бібліотеку чи написати самому. І вирішив зробити друге:

1. dbSimple написаний таким чином, що працювати може і з php 4, однак ця версія є анахронізмом і не дозволяє на повну розвернутись в плані ООП, яким я звик користуватись в повсякденному житті, яким пронизано мій framework.

2. Витрати часу приблизно однакові, однак отримані в другому випадку можливості, а саме повна підконтрольність мені, знання що як і до чого, компенсували можливі додаткові витрати часу, чи можливі втрати фугкціоналу (яким я все одно не користувався :) )

3. Просто люблю писати велосипеди для задоволення і самовдосконалення.

Ну вчора я прийняв таке рішення, а зараз я декілька годин бавлюсь з новою іграшкою, перевіряючи чи справді вона працює як мені треба :) Сподіваюсь, що ніяких несподіванок вона не викине і на постійне проживання ввійде в мій framework.

Дякую за увагу!

September 24, 2008 - Posted by grandse | Програмування | , , , , , , | No Comments Yet

Ще не має кометарів

Залишити коментар