Backticks
Ik heb een discussie met een paar bekenden van mij, over het gebruiken van backticks.
Hun zeggen dat backticks gebruiken beter is, echter weet ik wel beter.
Nu is mijn vraag:
Wat zijn de voordelen, maar ook de nadelen van backticks?
Ik weet onder andere de volgende punten al:
- Je draait om errors heen van de SQL wat zorgt voor een bagger systeem.
- Met een backtick kan je wel een - (minus) gebruiken in tabelnamen / velden, echter is dit niet verstandig, en kan je beter een _ gebruiken.
Wie heeft hier duidelijkere informatie over, want via google kon ik ook niet veel wijzer worden.
Groet,
Durk
Hallo! Waarom denk je dat SQL geen backticks voorschrijft? Omdat het nooit nodig is. Alleen wanneer je bugs in je code wilt hebben, dan ben je dus een sukkel, dan ga je backticks in je code zetten.
De keuze is aan jou.
pgFrank schreef op 08.03.2009 17:29:
Backticks zijn voor sukkels die meer bugs in hun systemen willen hebben. Alleen voor de allergrootste idioten, iedereen met meer intelligentie dan een goudvis zal deze rommel niet gebruiken. Of wil je nu echt extra bugs in je code hebben? Backticks zorgen voor bugs en bugs zijn nooit gewenst. Backticks hebben dus helemaal nooit enige toegevoegde waarde.
Ik ben vrij consequent over het gebruik van die vervloekte backticks. De dwaas die dat heeft uitgevonden, mogen ze nog een keertje tegen de muur zetten. Die **beep** heeft toch een ellende aangericht! Hoeveel bugs zal hij/zij nu al op zijn geweten hebben?
ik heb ze ook nog nooit nodig geacht.. mensen die roepen "maar soms heb ik een veld die dezelfde naam heeft als een functie"... Dan leer je maar af dat je je velden hetzelfde noemt!:p
Timen schreef op 10.03.2009 20:42:
Kwestie van hard slaan, dan zijn ze ineens wel in staat om een correcte naam te verzinnen.mensen die roepen "maar soms heb ik een veld die dezelfde naam heeft als een functie"...
Zinloos geweld bestaat niet...
Backticks lijden tot bugs. Is dat zo? Wel als je ze soms wel en soms niet gebruikt, en op die manier een keyword als tabelnaam weet te maken, maar niet kan bekijken. Maar is het nu fout dat backticks geïntroduceerd zijn, of is het fout dat ze niet verplicht zijn. SQL heeft al een heleboel keywords gereserveerd die prachtig zouden staan als kolomnamen. Nu zijn wij, de gebruikers van de taal, geforceerd creatieve, maar minder passende namen te bedenken.
Maar dan nog eens de vraag, want ik heb nog geen antwoord. Lijden backticks tot bugs? Nee op zich niet. De enige situatie waarin ik mij kan voorstellen is dat een beginner de fout maakt phpMyAdmin te gebruiken om z'n tabel te bouwen. phpMyAdmin gebruikt backticks, dus moet de gebruiker dat eigenlijk ook doen. phpMyAdmin had eigenlijk een optie moeten hebben om het wel of niet te gebruiken.
Het is net als met python. Je gebruikt of spaties of tabs om te indenten. Niet beiden. Zodra je dat wel doet, krijg je fout lopende code. Het zijn opties waar je je vingers aan open kan snijden. Is het daarom kut? Die stelling mag je van mij gaan verdedigen voor een stel C++ fanatiekelingen.
Gewijzigd op 01/01/1970 01:00:00 door Jelmer -
Quote:
Gebruik nederlandse namen en het probleem van gereserveerde woorden is voor 99,99% opgelost.Nu zijn wij, de gebruikers van de taal, geforceerd creatieve, maar minder passende namen te bedenken.
Eén van de weinige keywords die dan overblijft, is "type". Maar het woord "type" zegt niks, dus kun je daar nog even aan toevoegen wat je daar precies mee bedoelt. Probleem ook weer opgelost.
Zo moeilijk is het niet om goede namen te verzinnen, debuggen is vele malen moeilijker. Zie de enorme kosten die daaraan zijn verbonden, het verzinnen van een goede naam kost slechts een fractie daarvan. Schrijf je code op die manier dat er zo min mogelijk bugs kunnen ontstaan. En mochten ze tóch ontstaan, dat ze snel aan het licht komen.
En over feiten gesproken, zie de vele, vele topics die hier reeds aan zijn besteed en de vele, vele bugs die hierdoor zijn ontstaan. Dat zegt meer dan genoeg. Gebruik geen backticks en laat de fouten zo snel mogelijk aan het licht komen. Dan ben je niet afhankelijk van een codingstyle van een programmeur of er wel of geen bugs in je code komen. Even een find op de backticks ` en je weet waar je aan toe bent.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
zelfs de meest briljante programmeur maakt nog wel 's een foutje.. wist je dat?
Dat het geen standaard is vind ik niet echt een argument. Ten eerste heb je vernieuwingen nodig om standaarden te krijgen en te verbeteren. Daarnaast duurt het ontwikkelen van standaarden vaak ook erg lang omdat veel mensen het eens moeten worden. Een ontwikkelteam (en zeker als het geen 'community project' is) kan veel sneller knopen door hakken en de gebruiker verblijden met functionaliteit.
Even een voorbeeld waarin ik het gebruikt heb; Op het werk gebruiken we soms views als basis voor de lijst weergaven in een applicatie, door de 'kolom namen' van de views ook in de applicatie als kolom namen te gebruiken is het niet alleen mogelijk door één view meerdere pagina's waar (een deel van) deze lijst getoond wordt aan te passen, maar is het ook mogelijk om de klant in een handomdraai aan informatie te helpen. En daar komt deze functionaliteit bij kijken, in de kolom namen wil je wel eens een - of een spatie hebben. Natuurlijk zijn er andere manieren om het zelfde te bereiken, maar deze vind ik mooi door de eenvoud.
De één wil ze gebruiken, de ander gebruikt ze niet vanwege vele nadelen.
Bedankt voor de reacties, waar ik zelf ook wat aan gehad!
Ik vind het een zééér goede gewoonte dat programmatuur (edit: en bestandsnamen, database definities, etc) in het Engels wordt geschreven. Dit komt de consistentie en de leesbaarheid ten goede omdat je bij het programmeren niet om de Engelse termen heen kunt (deze zijn immers onderdeel van de programmeertaal). Het maakt de code tevens internationaal herbruikbaar.
Als je snapt hoe je de backticks moet gebruiken, en dit consistent doet, ontstaat hierdoor nooit een 'bug'.
Quote:
En over feiten gesproken, zie de vele, vele topics die hier reeds aan zijn besteed en de vele, vele bugs die hierdoor zijn ontstaan.
Veel dan deze bugs zijn doorgaans ontstaan door het niet gebruiken van backtricks, niet door het wél gebruik van backticks..
Gewijzigd op 01/01/1970 01:00:00 door Martijn Wieringa
Gewijzigd op 01/01/1970 01:00:00 door Ad Vertentie