komis: auto.css auto.php kwerendy.txt sklepmuzyczny: formularz.php muzyka.css sklepmuzyczny.HTML forum: forum.html forum.sql hobby.css polityka.txt rejestracja.php logowaniezbaza: arkusz.css index.html logowanie.php zaloguj.php logowaniemini: (zajebane z PZS) Oto najważniejsze funkcje silnika: -dodawanie newsów -edycja i usuwanie newsów -edycja podstron -zarządzanie plikami, z serwera FTP -tworzenie galerii zdjęć (z podziałem na kategorie) -zarządzanie sliderem -własny Newsletter -kanał RSS -edycja ustawień strony z poziomu Panelu Administratorskiego Co więcej silnik posiada szereg funkcji, ułatwiających lepsze pozycjonowanie strony!: -przyjazne linki -możliwość ustawienia słó kluczowych z poziomu PA -możliwość ustawienia osobnych słów kluczowych dla poszczególnych newsów -automatyczny skrypt tworzenia dokładnej mapy strony twojego serwisu. Informacje Wymagane -Nazwa użytkownika -Alias -Hasło -Potwierdź hasło -Adres e-mail Android: apk apk/assets/ apk/JACK-INF/ apk/META-INF/ apk/res/ Webmastering: / <--- jakieś tam pliki główne /rdf /pdf /index.php <-- plik startowy części frontowej /kernel.php <-- jądro systemu (tu następuje wykrycie ścieżki) /request.php <-- plik startowy dla żądań AJAX /login.php <-- plik startowy - logowanie /fileman.php <-- plik startowy - menedżer plików /images/ <-- na obrazki, które nie powinny być zależne od stylu (emotikonki etc) /modules/ <-- na pliki które odpowiadają za działanie forum (np. profile.php odpowiadający za funkcje profilu) /themes/ <-- skórki Webmastering (skrócony): /index.php /images/ <--na obrazki, które nie powinny być zależne od stylu (emotikonki etc) /themes/ <--skórki /admin/ webapp |-classes |-config |-lib |-logs |-public_html | |-css | |-images | |-js |-templates |-frontend | |-css | |-main.css | |-js | |-ajax.js | |-blockDisabledLinks.js | |-html5Validator.js | |-openImages.js | |-node_modules | |-package.json | |-webpack.config.js |-nbproject |-src |-tmp |-vendor |-web | |-css | |-images | |-js | |-404.html | |-calc.html | |-index.php | |-odette.html |-.gitignore |-.htaccess |-_ide_helper.php |-composer.json |-composer.lock |-LICENSE Programowanie: /src - wszelkie Twoje źródła /test - testy jednostkowe /docs - dokumentacja /lib - biblioteki, które wykorzystujesz w aplikacji /bin - skompilowane .dll i exe A w src tworzysz strukturę projektów. Tutaj powinny się znaleźć projekty w architekturze wielowarstwowej, czyli np. rozdział na UI - Logikę biznesową - Bazę danych. Czyli w Twoim przypadku formy powinieneś mieć w projekcie UI. Formatki, będą reagować na akcje użytkownika i dalsze obliczenia będą wykonywane przez klasy z projektu np. LogikaBiznesowa. A z kolei odwołania do bazy danych będą tylko z projektu logiki biznesowej. Są to przykładowe konfiguracje, ale przypuszczam, że w większości projektów informatycznych coś w ten deseń jest używane. Aczkolwiek jest to struktura, która może być dużo bardziej rozbudowana w zależności od rozmiarów projektu. ---------- 40 profili w katalogu blocks/ input_type_search.js input_type_search.bemhtml.js input__box.bemhtml.js input.css input.js input.bemhtml.js button.css button.js button.bemhtml.js button.png blocks/ input/ # input block directory _type/ # type modifier directory input_type_search.css # Implementation of modifier type # with value search in CSS technology __box/ # box element directory input__box.css __clear/ # clear element directory _visible/ # visible modifier directory input__clear_visible.css # Implementation of boolean modifier visible # with value true in CSS technology _size/ # size modifier directory input__clear_size_large.css # Implementation of modifier size # with value large in CSS technology input__clear.css input__clear.js input_layout_horiz.css input_layout_vertical.css input__elem.css input.css # input block implementation in CSS input.js # input block implementation in JavaScript button/ # button block directory button.css button.js button.png popup/ _target/ popup_target.css # Common code of modifier target popup_target_anchor.css # Modifier target with value anchor popup_target_position.css # Modifier target with value position _visible/ popup_visible.css # Boolean modifier visible popup.css popup.js library.blocks/ button/ button.css # CSS implementation in the linked library (height 20px) project.blocks/ button/ button.css # Redefinition of CSS implementation (height 24px) common.blocks/ button/ button.css # Generic CSS implementation of the button desktop.blocks/ button/ button.css # Desktop platform-specific button features mobile.blocks/ button/ button.css # Mobile platform-specific button features @import url(common.blocks/button/button.css); /* Generic CSS rules */ @import url(desktop.blocks/button/button.css); /* Desktop platform-specific */ @import url(common.blocks/button/button.css); /* Generic CSS rules */ @import url(mobile.blocks/button/button.css); /* Mobile platform-specific */ src/Mingos/uCrop src/ Exception/ ImageFormatException.php MissingLibraryException.php Image/ GD.php Imagick.php AbstractImage.php ImageInterface.php uCrop.php Nazewnictwo plików. Kiedy mamy już odpowiednia strukturę katalogu, warto się zastanowić nad sposobem nazywania poszczególnych plików. Omówiona struktura zapewnia nam odpowiednie miejsca na przechowywanie plików, ale w żaden sposób nie określa sposobu nazywania samych plików. Bardzo ważnym jest, aby nadać plikom odpowiednie nazwy. Jeśli musiałeś kiedyś ";walczyć"; z istniejącym systemem, z ubogo nazwanymi plikami, wiesz zapewne, jak trudno jest domyślić się, które pliki odpowiadają za dane funkcje. Dwoma najczęstszymi konwencjami nazewnictwa są oddzielanie słów podkreślnikami(_) np. ";new_member_signup.php"; i zaczynanie każdego nowego wyrazu wielką literą np. ";newMemberSignup.php";. Według mnie, drugi sposób jest odpowiedni w każdej sytuacji, a żaden plik lub katalog nie powinien zaczynać się wielką literą. Użycie tego typu nazewnictwa pozwala na łatwe odczytywanie nazw, a także łatwe ich wpisywanie -; trudniej jest wpisać nazwę z podkreślnikami. Dobrze jest także unikać nazw, które są zbieżne z nazwą danego katalogu. Nie powinieneś nazywać pliku zawierającego funkcje obsługujące ciągi ";lib.string.php"; i umieścić go w katalogu ";lib"; -; skoro plik znajduje się w katalogu z bibliotekami, to zapewne jest biblioteką -; wystarczy ";string.php";. Ta sama zasada obowiązuje przy nazywaniu klas, plików konfiguracyjnych, logów itd. Ogólnie rzecz biorąc konwencje nazywania plików są proste i łatwe do zapamiętania. codeskills.pl/bem/ Metodologia BEM Blok (z ang. block) .btn Element .btn__name .btn__counter Modyfikator (z ang. Modifier) .btn—positive .btn—negative