Jump to content
php.lv forumi

Vai HTML un SQL ir programmēšanas valodas?


Morphius

Recommended Posts

Atdalīts no http://php.lv/f/index.php?showtopic=13054

 

Te nu saakas terminologija... :) HTML ir vai nav programmeeshana, bet daudzi uzskata ka ir!

 

Dievi jeedzieni ritenis, velosipeeds... Ja es teikshu ka man patiik braukt ar riteni, tad es domaaju daudzi, ja ne visi, saptratiis mani pareizaa virzienaa :)

Link to comment
Share on other sites

HTML nav un nekad bijusi programmēšanas valoda. Tāpat arī css. Pieķeršos pie vienkāršākā - alogoritms - ne HTML, ne CSS nav iekšā nekādi algoritmi - tur ir tikai viens "algoritms" - kā konkrētais web pārlūks attēlos to, ko esi tur sarakstījis, viss - tev pašam nav nekādas kontroles par to. Ar HTML palīdzību tu nevari manipulēt ne ar datiem, ne rezultātu. Kas attiecas uz SQL, tad tā ir programmēšanas valoda. Ar to var manipulēt ar datiem, kontrolēt tos, pat veidot algoritmus.

Link to comment
Share on other sites

HTML nav un nekad bijusi programmēšanas valoda. Tāpat arī css. Pieķeršos pie vienkāršākā - alogoritms - ne HTML, ne CSS nav iekšā nekādi algoritmi - tur ir tikai viens "algoritms" - kā konkrētais web pārlūks attēlos to, ko esi tur sarakstījis, viss - tev pašam nav nekādas kontroles par to. Ar HTML palīdzību tu nevari manipulēt ne ar datiem, ne rezultātu. Kas attiecas uz SQL, tad tā ir programmēšanas valoda. Ar to var manipulēt ar datiem, kontrolēt tos, pat veidot algoritmus.

Kādus algoritmus tu ar SQL vari uzbūvēt? Visādus SQL extensionus vari atmest (procedūras,cikli, mainīgie)! Citādi jau ar CSS expressioniem un HTML conditional komentiem arī var veidot algoritmus. Tas, kā katrs pārlūks attēlos HTML savādāk ir implementācijas un standartu trūkuma vaina. SQL, lai gan ir standarti, dažādas DBVS var atlasīt dažādus datus pie vienāda SQL pieprasījuma. Sevišķi, ja iesaistītas dabības NULL vērtībām.

 

Btw, kā tas ir manipulēt ar datiem un kā ir manipulēt ar rezultātu? Ar ko tas atšķiras?

 

Ar SQL palīdzību tu DBVs pasaki - man no tās tur kopas vajag dabūt to tur apakškopu, kas atbilst šitādiem kritērijiem un sakārto viņu tā kā man vajag. Ko tu te vari (vai vajag) kontrolēt? Tu vienkārši deklarē kas ir nepieciešams izdarīt ar datiem. Ar HTML tu tāpat deklarē kā tos datus attēlot.

Link to comment
Share on other sites

Kāpēc tu procedūras, ciklus un mainīgos sauc par SQL extensioniem? Tie taču ir normālā SQL standartā iekšā SQL:2003, kas pie tam nav pēdējā SQL standarta revīzija.

 

Taču neviens mūsdienās nelieto aizvēsturisku SQL, bez tavis pieminētajiem "extensioniem". Parasti ar SQL saprot konkrētas DBPS (vai vairāku) SQL dialektu(s). Un vairums no mūsdienu DBPS nav iedomājamas bez storētajām procedūrām, trigeriem un tml, kur jau nu tu vari izpausties programmējot pēc savas patikas.

 

Un CSS expressions jau nav CSS. Tas ir Javaskripts, kas ielikts CSS'ā :)

Link to comment
Share on other sites

Nesapratu. Ja ar SQL standarta fīčām var programmēt (piemēram, uzrakstīt a=4; b=5; if (a>b) return a*2 else return b+4; ) tad kā to var nosaukt par "extensionu" ? Manuprāt, ja valodā spēj uzrakstīt kautko tml kā tādu if'u, tad nu par valodu nedrīkst teikt, ka tā nav programmēšanas valoda (tas, protams, nenozīmē uzreiz, ka tā ir tāda).

Es tavu domu neizprotu.

Ja es C++'ā sākšu programmēt funkcionālā stilā, tad tā neskaitīsies vairs programmēšana? (jo tas nav tādam darbam?)

Neko ārpus valodas iespējām es nedaru - un pēkšņi tā vairs neskaitās programmēšana...

Link to comment
Share on other sites

PHP ir general purpose valoda, un vēl ļooooti tālu no kaut-kādas standartizācijas (ja tāda vispār būs)

 

Tu mani piespiedi ielīst arī internetā pameklēt par šo tēmu:

 

Wikipēdijā ir smuki par šo aprakstīts šeit: http://en.wikipedia.org/wiki/SQL#Procedural_extensions

 

"SQL is designed for a specific purpose: to query data contained in a relational database. SQL is a set-based, declarative query language, not an imperative language. However, there are extensions to Standard SQL which add procedural programming language functionality, such as control-of-flow constructs"

Link to comment
Share on other sites

Nu tas ka pliku kaut-ko faktiski nekur neizmanto, tas tiesa, bet te jau mēs teoretizējam (vismaz es) :))

 

Jo tāds SQL un procedurālā programmēšana ir pārāk fundementāli atšķirīgs, kā, teiksim, procedurālā un OO.

 

Ko tad tas SQL procedurālais kods dara ar saviem loopiem un if`iem? Tas ir vnk samudrīts SQL. Tad, kad pieņēma šīs fīčas "standartā", varēja tak arī neieviest, bet tā vietā ieviest pilvērtīgu, civilizētu valodu šādā manipulācijām, kaut vai to pašu JavaScript, Tcl vai Lua un skaidri definēt, ka tas ir server side (tb RDBMS side) extensions.

Link to comment
Share on other sites

Nu es domāju, ka SQL sastāv no Data definition statements un no Data manipulation statements un privilēģiju menedžmenta steitmentiem.

 

Trigeri un procedūras izmanto SQL, bet viņi netiek veidoti SQLā. Manuprāt, šī rindkopa to lieliski izskaidro:

 

Originally designed as a declarative query and data manipulation language, variations of SQL have been created by SQL database management system (DBMS) vendors that add procedural constructs, flow-of-control statements, user-defined data types, and various other language extensions. With the release of the SQL:1999 standard, many such extensions were formally adopted as part of the SQL language via the SQL Persistent Stored Modules (SQL/PSM) portion of the standard.

 

Pirmajā teikumā beigās ir konstrukcija, kas arī iepriekš uzskaitīto apzīmē kā "language extensions". Otrais teikums norāda, ka šie paplašinājumi tika ietverti kā SQL valodas daļa, BET kā SQL/PSM daļa SQL standartā. Tātad, atsevišķi izdalīta no pamata SQL.

 

Procedurālais kods ar loopiem un ifiem kontrolē, kādus SQLus izpildīt. Tas nav samudrīts, vnk ja datubāzei slēdzas klāt N sistēmas, kur N sastāv no lietotājiem, kas slēdzas pa tiešo ar reportinga tūļiem, grāmatvedības sistēma, noliktavas sistēma, analīzes sistēma, datu ievades termināļi, datu replikācijas procedūras un vēl virkne nosacītu sistēmu, tad ir ļoti forši, ja datu loģika tiek uzturēta datubāzes līmenī. Vēsturiski viņas izveidojās dažādas, un ja tagad prasītu visus Oracle, IBM un vēl virkni pārtaisīt uz vienu standartu, tad tas būtu miljardos mērāmas izmaksas.

Edited by Mr.Key
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...