Geneza i ogólny opis

Obiektowy język definiowania dokumentów hipertekstowych i jego implementacja.

ObjectHTML : Program narzędziowy makedefs : Geneza i ogólny opis

Poprzednia strona: Wywołanie kompilatora
Nastepna strona: Uruchamianie

Kompilator ObjectHTML tworzy tylko zwykłe pliki zawierające kod HTML. Nie jest możliwe łatwe zintegrowanie ObjectHTML z istniejącymi serwerami WWW tak aby kompilator przetwarzał parametry pochodzące z zapytania protokołu HTTP i dynamicznie generował stronę w odpowiedzi. Na początku pracy napisałem, że ObjectHTML powinien być używany do pracy nad większymi projektami. Nieodzowną częścią wielu takich projektów są strony generowane dynamicznie. Wygląd wszystkich stron dynamicznych i statycznych powinien być taki sam, więc logiczne jest użycie jednego narzędzia do stworzenia układu. Rozwiązaniem tego problemu jest stworzenie układu strony i plików statycznych w ObjectHTML i użycie narzędzia makedefs pozwalającego na łatwą integrację wyników pracy kompilatora z narzędziami takim jak ASP, PHP.

Właściwie dodawanie nowego modułu do kompilatora rozszerzającego go o możliwość dynamicznej generacji stron nie jest rozsądnym pomysłem. Technologie ASP i PHP są wysoko rozwinięte i nie ma potrzeby pisania czegoś co jest już zrobione.

Makedefs służy do tworzenia plików nagłówkowych języków programowania: C, C++, PHP, ASP. Pliki te są konwertowane z stron wygenerowanych przez kompilator OHTML. Do generowanej strony należy dołączyć pary instrukcji sterujących pełniących funkcję nawiasów. Makedefs przetwarza pliki w poszukiwaniu instrukcji sterujących, a po znalezieniu pary do pliku wynikowego dodaje instrukcję definiującą stałą tekstową z tekstem znajdującym się w nawiasach.

Każda z instrukcji sterujących powinna zaczynać się w pierwszym znaku nowej linii.

Ich postać jest następująca (iden jest dowolnym identyfikatorem):

<!--MYDEF iden-->

<!--ENDMYDEF-->

Dodatkowo powyższe instrukcje mają formę komentarzy języka HTML. Dzięki temu stronę mającą ulec konwersji można bez żadnych przeszkód obejrzeć w przeglądarce, a instrukcje makedefs zostaną zignorowane. Można więc dopracować wygląd stron dynamicznych bez potrzeby testowania ich w rzeczywistym środowisku.

Tekst przypisany na stałą musi być odpowiednio sformatowany tak aby docelowy kompilator nie miał problemów ze znalezieniem początku i końca stałej. W przypadku konwersji do plików nagłówkowych języków C, C++ zostaną przeprowadzone następujące konwersje:

Listopad 2000