Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/12: Рейтинг темы: голосов - 12, средняя оценка - 4.58
5 / 5 / 1
Регистрация: 14.10.2012
Сообщений: 75

Где можно почитать как же все таки правильно писать WEB приложения?

26.10.2012, 19:23. Показов 2442. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!

Немноженько предыстории....Нужно было накодить менеджер контактов (просмотр, удаление, изменение контактов + авторизация). Писать на PHP по принципу ООП + применять JS. В функциональность я справился, все нормально работало. Но после кода-ревью последовала большая куча замечаний которые свелись, примерно к следующему:

- ООП в проекте скорее нет, чем есть;
- Верстка не отделена от логики приложения так писать нельзя (это к стати самое не понятное, в HTML нет не строчки PHP, все выводил через инъекции JS);
- В целом логика приложения построена не правильно.

В общем то все в таком духе. Это мое первое код-ревью, и думаю что такие замечания это нормально). Так вот ребята, подскажите источники где можно почитать как же все таки правильно писать WEB приложения? Очень хочется что бы тема была там действительно развернута, а не яблочный огрызок чего то мнения). Если необходимо само приложение, то выложу.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.10.2012, 19:23
Ответы с готовыми решениями:

Можно ли писать WEB-приложения
Здравствуйте, начинаю изучаю шарп и параллельно возникла идея для создания приложения. Так вот, можно-ли написать приложение под сайт,...

Что почитать, чтобы писать приложения, использующие БД
Здравствуйте! Занялся задачей написать приложение для базы данных в MS SQL. Приложение должно выполнять несколько функции: -...

Посмотрите все ли правильно или можно где-то сделать как-то иначе:
Ребят посмотрите все ли правильно или можно где-то сделать как-то иначе: import java.util.Scanner; public class Main{ ...

7
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
26.10.2012, 19:51
ИМХО: думаю что нужно выложить код, чтобы прокоментировать и обьяснить каждое из замечаний...
0
5 / 5 / 1
Регистрация: 14.10.2012
Сообщений: 75
26.10.2012, 19:59  [ТС]
Конечно! Вот он кодик...
Вложения
Тип файла: rar contager.ru.rar (5.64 Мб, 36 просмотров)
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
26.10.2012, 21:24
Скачал, посмотрел чуть.. сразу же, в самом начале index.php
PHP
1
2
if (!isset($_SESSION['logged'])) header("Location: http://contager.ru/auth/auth_view.php");
    else if (!$_SESSION['logged'] == TRUE) header("Location: http://contager.ru/auth/auth_view.php");
что это?
PHP
1
2
3
4
5
6
7
8
9
$arr['name'] = $_POST['name'];
$arr['dob'] = $_POST['dob'];
$arr['phone'] = $_POST['phone'];
$arr['mail'] = $_POST['mail'];
$arr['note'] = $_POST['note'];
 
include ('../class/contact.php');
$cont = new Contact($_SESSION['userID']);
$cont->add_contact( $arr['name'], $arr['dob'], $arr['phone'], $arr['mail'], $arr['note']);
в таком контексте - бессмысленно и вообще бредово, имхо. А если полей будет в два раза больше, вы их все тоже будете перечислять? И что произойдет если я вручную наберу адрес в строке?
По поводу класса с подключением. Если забыть о том, что там просто функции, перебитые в класс, то что мне делать если я хочу поменять пароль подключения? Или если мне надо под разными юзерами заходить, то мне надо копировать скрипт подключения, так?
PHP
1
2
3
4
5
6
7
public function save_user($login, $password, $name) {
        if (mysql_query("INSERT INTO users (login, password, name) VALUES ('$login', '$password', '$name')")) {   
            return TRUE;
        }
        else 
            return FALSE;
    }//save_user
если не учитывать то, что желательно бы использовать mysql_affected_rows(), то тогда там всего то одна строчка получится..
PHP
1
2
3
4
public function save_user($login, $password, $name) {
    return mysql_query("INSERT INTO users (login, password, name) 
                           VALUES ('$login', '$password', '$name')"));
    }//save_user
Регистрация спокойно пропускает пробелы, при неверных данных авторизации (как и регистрации) никаких ошибок, ничего..
Дальше смотреть не стал, лень.. Дизайн вроде бы неплохой - занимайтесь им, не лезьте в компанию, где требуют хороших навыков ООП пока.. У Вас не ООП-подход, а процедурный, запихнутый в классы, да и он прихрамывает, уж извините..

Добавлено через 17 минут
P.S. сразу забыл - это на вопрос по литературе Учебники по PHP
1
5 / 5 / 1
Регистрация: 14.10.2012
Сообщений: 75
26.10.2012, 21:24  [ТС]
Ну в этом и суть вопроса...я же должен как то подобраться к ООП подходу. Что такое класс его записывать я понимаю, ну как этими классами обращаться в приложении, как их между собою связывать...с этим проблемы, поэтому я обращаюсь, что бы мне дали советы конкретные, источники где что почитать. Да и на задание давали всего 10 часов, я попросту не успевал продумать ООП, так опыта нет.
И извините, я очень благодарен за то, что вы уделили мне время, но совет ни куда не суйтесь и сидите на .... ровно - не очень. Как можно тогда чему то научится, я хочу суваться и хочу учиться...
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
26.10.2012, 21:37
Цитата Сообщение от _Mikhail_ Посмотреть сообщение
но совет ни куда не суйтесь и сидите на .... ровно
если Вы так меня поняли - то извиняюсь, я наверное неверно выразился. Как раз наоборот, суйтесь - но не с места в карьер. Сначала изучите хорошо процедурный, изучите все досконально. Если все-таки на ООП хотите сразу - то прежде чем что-то писать - распланируйте все на бумажке. Почитайте про парадигму ООП в общем. Главная фишка ООП - пожалуй, инкапсуляция. Но также важна и расширяемость, у Вас же это приложение расширять будет проблематично. Простой пример почему - то, что я написал про класс для работы с БД. ООП - это объектно-ориентированный подход, то есть все "исчисляется в объектах", это просто другая логика и мышление. Выделите для себя и выпишите схему проекта и уже по ней делайте. Затем, когда Вы решите что улучшать уже нечего - скачайте какую нибудь CMS и посмотрите как там все устроено и сравните со своим. Почитайте про шаблоны и методики программирования на ООП (к примеру, Мэтт Зандстра | PHP. Объекты, шаблоны и методики программирования), можно начать с java изучение как вариант..

Добавлено через 2 минуты
А про компанию - я же сказал, на время
Цитата Сообщение от KOPOJI Посмотреть сообщение
не лезьте в компанию, где требуют хороших навыков ООП пока..
1
5 / 5 / 1
Регистрация: 14.10.2012
Сообщений: 75
26.10.2012, 21:43  [ТС]
если Вы так меня поняли - то извиняюсь, я наверное неверно выразился. Как раз наоборот, суйтесь - но не с места в карьер. Сначала изучите хорошо процедурный, изучите все досконально. Если все-таки на ООП хотите сразу - то прежде чем что-то писать - распланируйте все на бумажке. Почитайте про парадигму ООП в общем. Главная фишка ООП - пожалуй, инкапсуляция. Но также важна и расширяемость, у Вас же это приложение расширять будет проблематично. Простой пример почему - то, что я написал про класс для работы с БД. ООП - это объектно-ориентированный подход, то есть все "исчисляется в объектах", это просто другая логика и мышление. Выделите для себя и выпишите схему проекта и уже по ней делайте. Затем, когда Вы решите что улучшать уже нечего - скачайте какую нибудь CMS и посмотрите как там все устроено и сравните со своим. Почитайте про шаблоны и методики программирования на ООП и сами парадигмы ООП, можно начать с java изучение как вариант..
Спасибо большое, вектор дальнейших действий я вроде бы понял....буду суетиться
0
26.10.2012, 21:45

Не по теме:

Цитата Сообщение от _Mikhail_ Посмотреть сообщение
вроде бы понял....буду суетиться
Удачи :)

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.10.2012, 21:45
Помогаю со студенческими работами здесь

где можно почитать как сделать программу telnet?
Здравствуйте, Все. Подскажите пожалуйста где можно почитать как сделать программу telnet. Используя ASP технологию. Может уже есть...

Где можно почитать о том, как устроена Windows? Как она работает и т.д.?
Есть книги такие?

Как или где лучше писать графические приложения на с++
Здравствуйте, хочу написать графическое приложение на с++, где точки будут двигаться по полю по определённому алгоритму и взаимодействовать...

Обьясните где ошибка , и как правильно писать программу!
Дано натуральное число N и вещества х. Вычислить S=∑_(k=1)^N a_k,a_k=√(x^2+〖sin〗^2*k п/4) а вот уже пример из самого алгоритма...

Что можно почитать по основам web программирования?
Чтобы просто иметь начальное представление об этом.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru