ARGOS multigaming cms

Аз кода си го разбирам, това за мен е най важно.. Аз сам си я разработвам и не мога да се съобразявам с другите на този етап. Аз от отдавна се занимавам с програмиране и горе-долу мога да разбера кое е добро и кое лошо.
Просто като пиша кода, гледам всичко да става по-бързия начин и за това някои методи, променливи, имена на масиви си ги пиша с имена както ми дойде или направо си ги копирам от стака както са дадени там...
Не смятам, че кода е лош, може би е малко дървен, но работи.. Горе спомена защо не е бинднато някакво $id - то е минато през int или е от phpbb 3 сесията.. Гледал съм всичко да е сбито и за това на някои места не всичко е с prepare..
За 200 лв толкова.. Даже шопа се връзва 30-40 Евро.. Смятам, че за тези пари си струва.
Може някога когато вече всичко е направено да си играя и да подредя някои неща и да сменя имената на някои функции/променливи и прочие..
За сега такова нямам.. На работа съм до 18 и след това изморен се прибирам и почвам да кодя.. Няма как просто и за това малко през пръсти, защото и мързела ме хваща.. Но всичко си работи..
Довечера ще кача и клипа :)
Този шоп е 98-мия екстеншън.
 
Последно редактирано:
Гледам, че доста сте изписали по темата. Може ли някой да ме въведе накратко за какво става въпрос? Каква е идеята на този CMS, на какво е базиран и къде му е кода, защото гледам че го обсъждате?
 
Аз кода си го разбирам, това за мен е най важно.
Сега го разбираш, защото сега си го писал. Всяка бъдеща промяна ще отнема все повече и повече време.

Аз от отдавна се занимавам с програмиране и горе-долу мога да разбера кое е добро и кое лошо.
Не можеш и то се вижда от километри.

Просто като пиша кода, гледам всичко да става по-бързия начин и за това някои методи, променливи, имена на масиви си ги пиша с имена както ми дойде
Имаш време да оставиш коментар след променливата, но нямаш време да я именуваш подобаващо?

Не смятам, че кода е лош, може би е малко дървен, но работи..
Кода е ужасно зле. Някой ден може и да разбереш.

Горе спомена защо не е бинднато някакво $id - то е минато през int или е от phpbb 3 сесията.. Гледал съм всичко да е сбито и за това на някои места не всичко е с prepare..
Какво общо има сбитото с това какво ще мине prepare. Първо, че кода ти става неконсистентен. На пръв поглед като се види заявката и на всеки му прави впечатление защо едни неща са байнднати, а други не.
А и ако искаш да е сбит защо си нахакал 200 if-а в един метод? Раздели логиката. Прочети за single responsibility principle и separation of concerns.

За 200 лв толкова..
Добре е, че хората не знаят какво се крие отдолу, иначе за тези като мен, които знаят - това не струва 200лв. Но поне евала за това, че си я пробутал за толкова.

За сега такова нямам.. На работа съм до 18 и след това изморен се прибирам и почвам да кодя.. Няма как просто и за това малко през пръсти, защото и мързела ме хваща.. Но всичко си работи..
Довечера ще кача и клипа :)
Този шоп е 98-мия екстеншън.
Научи се да кодиш с добри практики. Проблема в момента ти е, че ръшваш да вкарваш нови фичъри. Проблема на този подход е, че като изоставиш фундаменталните неща, кода ти остава боза, труден за рефакторинг след това и всяка нова добавка или фикс на бъг ще отнема много повече време.

къде му е кода
На предната (или по-предната) страница остави линк към pastebin към кода на екстеншъна.
 
Ако става дума за този pastebin код, то проблемите са наистина много. Не са спазени доста от PSR стандартите. Мисля, че максималната PHP версия, на която може да се подкара този код е 7.4 и то с някои промени, а за 8+ не ми се мисли. Бих предложил да се въведе Namespace Auto Loader, което ще улесни системата и няма да се въвеждат куп ненужни неща с in_file(); (предполагам е file loader).

Не искам да се превръщам в критик на системата, но автора не е лошо да послуша за много неща @Revelation! Ако този код е предвиден за продажба, доста трудно ще се поддържа след това.
 
Кодът е ужасен, спор няма, но съм виждал долу-горе същото качество в проекти, продаващи се за стотици хиляди. Клиентите изобщо не ги интересува качеството на кода, докато системата работи.
 
Кода си върви под 8.1,и аз съм виждал по-зле в темплейт който купих от envato.. Даже не работи под 8-цата..
@dakata__92 - това е пейстбина - https://pastebin.com/zSWdZvz5
 
Последно редактирано:
Кодът е ужасен, спор няма, но съм виждал долу-горе същото качество в проекти, продаващи се за стотици хиляди. Клиентите изобщо не ги интересува качеството на кода, докато системата работи.
Проблема е, че същите тези клиенти в момента реват за нови неща и ги получават по-бавно.

Аз поддържам доста стара система, която е писана с краката си (има ги същите истории с методи, които са стотици редове). Доста неща оправихме и изнесохме към Симфони бъндъли, но базата, която сервира системата е просто заложена там и няма мърдане.

Бъгове се оправят 100 пъти по-трудно, да не говорим за добавяне на нови фичъри. По стария код не може да става и дума за unit tests. Променяш нещо, то се оказва, че пипа още 10 неща без да разбереш и лошото е, че често се разбира в production среда и се налага хотфикс.

За щастие всичко пренаписваме вече и то на .NET, което е в пъти по-добре.

За това на автора от опит му казвам какви са потенциалните проблеми, които 100% ще срещне на по-късен етап, ако продължава така.
 
Проблема е, че същите тези клиенти в момента реват за нови неща и ги получават по-бавно.

Аз поддържам доста стара система, която е писана с краката си (има ги същите истории с методи, които са стотици редове). Доста неща оправихме и изнесохме към Симфони бъндъли, но базата, която сервира системата е просто заложена там и няма мърдане.

Бъгове се оправят 100 пъти по-трудно, да не говорим за добавяне на нови фичъри. По стария код не може да става и дума за unit tests. Променяш нещо, то се оказва, че пипа още 10 неща без да разбереш и лошото е, че често се разбира в production среда и се налага хотфикс.

За щастие всичко пренаписваме вече и то на .NET, което е в пъти по-добре.

За това на автора от опит му казвам какви са потенциалните проблеми, които 100% ще срещне на по-късен етап, ако продължава така.
Това правя и аз сега.
Закрепих колкото да не ме занимават и всичко наново се прави, но проблема е с базата която каквото и да правиш не може да бараш.
 
Проблема е, че същите тези клиенти в момента реват за нови неща и ги получават по-бавно.
Това е негов проблем, от гледна точка на клиента проблем няма. Докато прави нови екстеншъни през няколко дни, всички са доволни и не им пука какъв батак всъщност е отдолу.

Аз отдавна съм се отказал да критикувам чужди проекти, в които не участвам... пълна загуба на време, щом човека не смята, че кода е лош.
 
Това е негов проблем, от гледна точка на клиента проблем няма.
Е, да де. Все пак говоря от гледна точка на разработчика. То, че проблем за клиента няма - няма. Макар че и това не е изцяло вярно, когато клиентите залагат пари, защото това, което чакат кара бизнеса им да върви. Като цяло нещата са навързани, но вече зависи много и от проекта и от клиентите.

Аз отдавна съм се отказал да критикувам чужди проекти, в които не участвам... пълна загуба на време, щом човека не смята, че кода е лош.
Хубаво правиш, но уж нали сме тук да помагаме. Понякога това става с критика какво не е наред.

но проблема е с базата която каквото и да правиш не може да бараш.
Ако се налага правиш миграция на данните. В нашия случай ще се наложи, защото събираме две платформи в една и ги разбиваме на микросървизи, и отделно минаваме на Postgres.

Зависи колко време имаш и колко си заслужават усилията, се пишат миграционни скриптове или си пишеш туулове.
 
Хубаво правиш, но уж нали сме тук да помагаме. Понякога това става с критика какво не е наред.
Почти никога не работи. 100% съм сигурен, че човека си мисли, че го хейтиш.
 
Не, нищо не си мисля, той ги чатка нещата, но аз си имам мои си виждания как да си кодирам... :) Ако съм искал да се развивам в тази посока щях да се развивам, но предпочитам да не седя много пред компа и да задълбавам.. Имам си достатъчно здравословни проблеми с кръста..
И за да не се отделяме повече от темата, ще напиша, че създадох още 1 екстеншън, но няма да му споделям кода, че ще тръгнете и него да ми го коментирате :D

Демо:

От админ панела - админите могат да добавят артикули, които да се добавят в този страничен бокс. Бокса е с име Нашите артикули (естествено може да си го промените)
Преведен е на всички текущи езици.
Ползва jquery flipster - https://www.jqueryscript.net/slides...er-Flow-Plugin-with-jQuery-CSS3-flipster.html
Демо на библиотеката:https://www.jqueryscript.net/demo/image-cover-flow-flipster/
Много е готина тази библиотека и има страхотни ефекти.
В while цикъла ползвам $count++ и показвам само 3 отгоре, а останалите (LIMIT 8) 5 - се показват с flipster.
Това беше по заявка на клиента, като това отива при него с един custom user news екстеншън.
Утре ще го започна и него. Потребителите ще пишат новини с които ще печелят някакви суми, които ще се дават от админ панела (за това ще има допълнителен екстеншън)
 
8.0:
- Създаден е нов темплейт (lob) - за League of Legends (вече е интегриран)
- добавени са нови ланг дефиниции
- изменения по някои функции във functions.php (в slider-a е добавена $count2 променлива, която брои заради bootstrap5 слайдъра,а в stats функцията е добавена проверка за ботове и не ги зачита вече)
- Добавен е клас на иконките за езиците, тъй като ще ми трябват за в бъдеще, за да ги изнасям из разни по-специфични менюта. В новата тема вече се показват в circle jquery меню, което е фиксирано. (много готин ефект)


Не съм забравил за видеото, но в момента работя над един екстеншън. Всичко ще кача в следващия пост.
 
Има и $count, която почва от 0, а тази ($count2) от -1.
Целта е, че понякога някои слайдъри искат да имат data атрибути, за да могат да работят и да се сменят слайдърите. Във функцията има глобални темплейт дефиниции, които извеждат данните от 2-те променливи ($count/$count2), а има и $active
if($count == 1) {
$active_class = true;
}
и т.н.
Просто се подготвям за следващи темплейти, които ще са базирани на по-новинте bootstrap версии.
Сега работя върху един екстеншън и като го финиширам утре, ще кача още инфо :)
 
Има и $count, която почва от 0, а тази ($count2) от -1.
Целта е, че понякога някои слайдъри искат да имат data атрибути, за да могат да работят и да се сменят слайдърите. Във функцията има глобални темплейт дефиниции, които извеждат данните от 2-те променливи ($count/$count2), а има и $active
if($count == 1) {
$active_class = true;
}
и т.н.
Просто се подготвям за следващи темплейти, които ще са базирани на по-новинте bootstrap версии.
Сега работя върху един екстеншън и като го финиширам утре, ще кача още инфо :)
Обяснението няма нищо общо с въпроса. :)
 
В чужбина съм на работа и за това не пиша. Ще продължа с ъпдейтите като се върна. Вече я продадох и има лайв демо, но ще има още промени и за това няма да дам линк.
Ще пренапиша екстеншъните и ще им сложа от псевдо моделите, та кода да е по чист.
Друго не мога да направя, но и в момента няма как, лаптопа не е с мен.
Ще направя и още 2 екстеншъна - бокс със слайдър с последните качени изображения и примерни теми за новините отново в бокс. Ще се показва при отворена новина.
Открих и едно бъгче.. Ще го оправя, но ще се върна чак Октомври, ако всичко върви по план..
Ай, чао :)
 
Остават 15 дни и i am back!
Ще има яко ъпдейти.. :)
 

Back
Горе