Перейти к содержанию
vadik21

Модерация дополнений?

Модерация дополнений  

28 проголосовавших

You do not have permission to vote in this poll, or see the poll results. Пожалуйста, войдите или зарегистрируйтесь для возможности голосования в этом опросе.

Рекомендуемые сообщения

Уважаемая администрация. Дело конечно ваше, но мне все таки кажется что стоит модерировать модули и шаблоны продаваемые пользователями. Люди продают абсурдные вещи которые только засоряют раздел. Особенно это относится к шаблонам.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Но что действительно бы не помешало так это премодерация дополнений на качество кода. К качеству кода можно отнести:

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

- соответствие шаблону MVC, чтобы не было sql запросов в контроллерах и тем более в представлениях итд.

- всегда использовать апи опенкарта там где это возможно

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

- не использовать слепой копипаст. Нужно создать что-то, скопировал 2 страницы кода движка, вставил в свой модуль, проверил, как-то работает.. и какая разница что там половина переменных не используется?..

- безопасность кода

- итд.

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

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

Что здесь? Любой "гений программирования" может на коленке сделать свой первый модуль и выставить за него любую цену.. И это вообще никто не проверяет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...

Красота и качество кода штука тоже относительная. А что такого в том, чтобы в контроллере использовать SQL? OpenCart так часто делает. Да и ORM у него нет. Если сам OpenCart не ангел в плане кода, то что такого требовать от модулей?

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

А вот в плане полезности модулей - это уже вопрос.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Красота и качество кода штука тоже относительная.

Именно для этого и придумали стандарты кодирования. Каждая уважающая себя система его имеет. И любой программист который пишет под эту систему обязан его придерживаться. Иначе в одном файле отступы будут через табуляции, в другом через 2 пробела в третьем через 4, в четвертом через 8. Один файл в utf8, другой в cp1251 итд.

А что такого в том, чтобы в контроллере использовать SQL? OpenCart так часто делает.

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

Только что посмотрел код опенкарта. SQL запрос в каталоге используется в одном единственном контроллере - seo_url, возможно на это есть своя причина, которой я не вижу, возможно просто поленились создавать для парочки запросов отдельную модель, не знаю. Но в любом случае это аж никак не "часто делает".

В админке тоже в 1 контроллере - главной странице, там вроде какие-то заказы вытягиваются с базы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

....

Я не хочу спорить что хорошо, что плохо в кодировании в глобальном понимании. Просто OpenCart написан в определенном стиле. Если OpenCart написан белым стихом Лаэртского, то какой смысл требовать, чтобы модули были написаны пушкинским Ямбом?

Позвольте мне не придерживаться стандарта OpenCart:

  $this->data['text_affiliate'] = $this->language->get('text_affiliate');
  $this->data['text_attribute'] = $this->language->get('text_attribute');
  $this->data['text_attribute_group'] = $this->language->get('text_attribute_group');
  $this->data['text_backup'] = $this->language->get('text_backup');
  $this->data['text_banner'] = $this->language->get('text_banner');
  $this->data['text_catalog'] = $this->language->get('text_catalog');
  $this->data['text_category'] = $this->language->get('text_category');
  $this->data['text_confirm'] = $this->language->get('text_confirm');
  $this->data['text_country'] = $this->language->get('text_country');
  $this->data['text_coupon'] = $this->language->get('text_coupon');
  $this->data['text_currency'] = $this->language->get('text_currency');  
  $this->data['text_customer'] = $this->language->get('text_customer');
  $this->data['text_customer_group'] = $this->language->get('text_customer_group');
  $this->data['text_customer_blacklist'] = $this->language->get('text_customer_blacklist');
  $this->data['text_sale'] = $this->language->get('text_sale');
  $this->data['text_design'] = $this->language->get('text_design');
  $this->data['text_documentation'] = $this->language->get('text_documentation');
  $this->data['text_download'] = $this->language->get('text_download');
  $this->data['text_error_log'] = $this->language->get('text_error_log');
  $this->data['text_extension'] = $this->language->get('text_extension');
  $this->data['text_feed'] = $this->language->get('text_feed');
  $this->data['text_front'] = $this->language->get('text_front');
  $this->data['text_geo_zone'] = $this->language->get('text_geo_zone');
  $this->data['text_dashboard'] = $this->language->get('text_dashboard');
  $this->data['text_help'] = $this->language->get('text_help');
  $this->data['text_information'] = $this->language->get('text_information');
  $this->data['text_language'] = $this->language->get('text_language');
  $this->data['text_layout'] = $this->language->get('text_layout');
  $this->data['text_localisation'] = $this->language->get('text_localisation');
  $this->data['text_logout'] = $this->language->get('text_logout');
  $this->data['text_contact'] = $this->language->get('text_contact');
  $this->data['text_manufacturer'] = $this->language->get('text_manufacturer');
  $this->data['text_module'] = $this->language->get('text_module');
  $this->data['text_option'] = $this->language->get('text_option');
  $this->data['text_order'] = $this->language->get('text_order');
  $this->data['text_order_status'] = $this->language->get('text_order_status');
  $this->data['text_opencart'] = $this->language->get('text_opencart');
  $this->data['text_payment'] = $this->language->get('text_payment');
  $this->data['text_product'] = $this->language->get('text_product');
  $this->data['text_reports'] = $this->language->get('text_reports');
  $this->data['text_report_sale_order'] = $this->language->get('text_report_sale_order');
  $this->data['text_report_sale_tax'] = $this->language->get('text_report_sale_tax');
  $this->data['text_report_sale_shipping'] = $this->language->get('text_report_sale_shipping');
  $this->data['text_report_sale_return'] = $this->language->get('text_report_sale_return');
  $this->data['text_report_sale_coupon'] = $this->language->get('text_report_sale_coupon');
  $this->data['text_report_product_viewed'] = $this->language->get('text_report_product_viewed');
  $this->data['text_report_product_purchased'] = $this->language->get('text_report_product_purchased');
  $this->data['text_report_customer_online'] = $this->language->get('text_report_customer_online');
  $this->data['text_report_customer_order'] = $this->language->get('text_report_customer_order');
  $this->data['text_report_customer_reward'] = $this->language->get('text_report_customer_reward');
  $this->data['text_report_customer_credit'] = $this->language->get('text_report_customer_credit');
  $this->data['text_report_affiliate_commission'] = $this->language->get('text_report_affiliate_commission');
  $this->data['text_report_sale_return'] = $this->language->get('text_report_sale_return');
  $this->data['text_report_product_purchased'] = $this->language->get('text_report_product_purchased');
  $this->data['text_report_product_viewed'] = $this->language->get('text_report_product_viewed');
  $this->data['text_report_customer_order'] = $this->language->get('text_report_customer_order');
  $this->data['text_review'] = $this->language->get('text_review');
  $this->data['text_return'] = $this->language->get('text_return');
  $this->data['text_return_action'] = $this->language->get('text_return_action');
  $this->data['text_return_reason'] = $this->language->get('text_return_reason');
  $this->data['text_return_status'] = $this->language->get('text_return_status');
  $this->data['text_support'] = $this->language->get('text_support');
  $this->data['text_shipping'] = $this->language->get('text_shipping'); 
  $this->data['text_setting'] = $this->language->get('text_setting');
  $this->data['text_stock_status'] = $this->language->get('text_stock_status');
  $this->data['text_system'] = $this->language->get('text_system');
  $this->data['text_tax'] = $this->language->get('text_tax');
  $this->data['text_tax_class'] = $this->language->get('text_tax_class');
  $this->data['text_tax_rate'] = $this->language->get('text_tax_rate');
  $this->data['text_total'] = $this->language->get('text_total');
  $this->data['text_user'] = $this->language->get('text_user');
  $this->data['text_user_group'] = $this->language->get('text_user_group');
  $this->data['text_users'] = $this->language->get('text_users');
  $this->data['text_voucher'] = $this->language->get('text_voucher');
  $this->data['text_voucher_theme'] = $this->language->get('text_voucher_theme');
  $this->data['text_weight_class'] = $this->language->get('text_weight_class');
  $this->data['text_length_class'] = $this->language->get('text_length_class');
  $this->data['text_zone'] = $this->language->get('text_zone');

А давайте вы напишите code convension - соглашение о стиле кода, а мы его обсудим, покритикуем.

Опрос - полный отстой. Типичная демагогия. Все знают, что лучше быть богатым и здоровым, чем бедным и больным. Но у любого действия есть pro и conta, а опрос построен на риторки а ля Единая Россия: прдеставление положения вещей так, как будто нет альтернатив.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я за премодерацию, особенно платных решений, но как я понял это труднореализуемо.

sv2109, это недостижимый идеал =)) модули должны хотя бы работать без ошибок и не представлять опасность =))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я за премодерацию, особенно платных решений, но как я понял это труднореализуемо.

sv2109, это недостижимый идеал =)) модули должны хотя бы работать без ошибок и не представлять опасность =))

А где гарантия, что модуль не предоставляет опасности?

Идеал этот вполне достижим. Он успешно применяется уже много лет в других системах.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А где гарантия, что модуль не предоставляет опасности?

а таких гарантий никто не даст, но если его проверит человек с головой, риск уменьшится.

Идеал этот вполне достижим. Он успешно применяется уже много лет в других системах.

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

заказчику до лампочки соответствует код конвенции или нет )

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а таких гарантий никто не даст, но если его проверит человек с головой, риск уменьшится.

заказчику до лампочки соответствует код конвенции или нет )

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

Задумка хороша, но... на каждое действие - найдут противодействие, заnullят и т.д...

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

Вот по поводу топика, то по сути премодерация нужна однозначно, но в случае чего, спрос будет с модератора 8-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...но в случае чего, спрос будет с модератора 8-)

Какой? Расстрел? :ugeek:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какой? Расстрел? :ugeek:

Кошелёк вебмани изымут и все средства поделят между пострадавшими, купившими недоброкачественный модуль... :-D

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

О, точно! Надо, чтобы модератор вносил залоговую сумму в размере, например, 1000 уёв. И за каждый косяк оттуда отгрызать определённую сумму. Когда там станет 0 - выгнать его взашей и взять нового. :ugeek:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

О, точно! Надо, чтобы модератор вносил залоговую сумму в размере, например, 1000 уёв. И за каждый косяк оттуда отгрызать определённую сумму. Когда там станет 0 - выгнать его взашей и взять нового. :ugeek:

Тогда уж лучше "десятину" от продаж модуля взымать, на какое нить "общак" и в случае чего, оплачивать "авторитетному" кодеру за исправление косяков в дополнениях, которые не промодерировал вышеупомянутый владелец кошелька вебмани... :huh:
  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

заказчику до лампочки соответствует код конвенции или нет )

вот я не так давно покупал модуль на оф.сайте - видео галерея. Зашел на демо сайт, все нормально, все работает, зашел в админку, покликал все работает. Купил, установил и вот засада.. модуль написан с поддержкой только 1 языка. А установить его я хотел на двумовный сайт. И что? заплатил деньги, закатывай рукава и дописывай, разбирая чужой код..

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

То же и относится к модерации. Ни один программист, даже супер мега крутой не сможет просматривать все модули и исправлять там все баги.. это нереально. Но просмотреть модуль на соответствие самым элементарным стандартам вполне возможно. Это никак не гарантирует что ошибок не будет, но может значительно их уменьшить.

но вижу многим на это глубоко наплевать, как-то работает.. ну и фиг с ним..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

post-17899-0-18128800-1353437388_thumb.jpg

Может и не в тему, но что то тут есть общего с топиком опроса и криворуким покупателем модуля...

  • +1 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

post-17899-0-18128800-1353437388_thumb.jpg

Может и не в тему, но что то тут есть общего с топиком опроса и криворуким покупателем модуля...

Это круто!!! Это очень круто!!!))))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может и не в тему, но что то тут есть общего с топиками отзывов о некоторых разработчиках... :wink: :

post-5108-0-43534900-1353504147_thumb.jpg

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В тему, в тему)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

И потом продает ее здесь, где тут правда?

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

Думаю тут программист не имеет права выставлять эту работу вообще.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обычно если заказчик хочет всё права на разработку, то просто увеличивается цена работы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

И потом продает ее здесь, где тут правда?

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

Думаю тут программист не имеет права выставлять эту работу вообще.

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

А вообще такие вещи нужно оговаривать до начала работы. Я обычно говорю заказчику примерно так - работа будет стоит например 50$ и я не имею права ее кому-либо продавать или работа стоит 25$ и я ее включаю в свой коммерческий модуль. Во втором случае кроме цены покупатель получает еще ряд преимуществ - модуль будет развиваться, будут исправляться баги, доделываться новые функции, будут писаться версии для новых версий движка итд и покупатель получит все новые версии бесплатно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
идея - это нечто аморфно-абстрактное

Несогласен.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
работа будет стоит например 50$ и я не имею права ее кому-либо продавать или работа стоит 25$ и я ее включаю в свой коммерческий модуль. Во втором случае кроме цены покупатель получает еще ряд преимуществ - модуль будет развиваться, будут исправляться баги, доделываться новые функции, будут писаться версии для новых версий движка итд и покупатель получит все новые версии бесплатно.

Пожалуй,это самое правильное решение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Несогласен.

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

Ну-ну-ну... Простой пример. Идей для фильтра опенкарта если не сотни, то десятки. Сколько из тех, у кого эти идеи, их реализовали. 3-5 человека?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.