Saebekassebil
Jotak. Ville da være interesseret i at se det men af en eller anden grund (og til stor frustration for samtlige elever på gymnasiet) har man valg Fronter og CSC LUDUS (to forskellige systemer) til aflevering og skemaer.
Men jeg har skam også skrevet mit eget API til deres system så det er helt fint
Jeg har fint nok styr på kodningen af individuelle elementer, der hvor jeg virkelig fejler er med viden omkring større systemer. Altså fx forsøger jeg at lære mig nogle design principper og forsøger at arbejde efter dem i mindre skala.
Det med plugins lader sig let gøre gennem reflection.
Hvis du skal bruge hjælp med hardwaren kan du o øvrigt bare fange mig herinde
.
Brian...
Jeg ovejer lidt at gå for idéen med flere lag. Ellers skal jeg som sagt have sådan en static class hængene med forbindelserne i.
Jeg havde egentlig tænkt mig at kode løs her i weekenden (får ikke tid næste weekend, og heller ikke næste igen)... Så jeg ville egentlig gerne få det gjort.
Men så er der jo ordsproget "hastværk er lastværk" eller hvad man nu siger. Så tror bare at jeg vil kigge lidt ind i hvordan pokker jeg får lagt det her bedst ud. For jeg er træt af at lave tingene om. Og jeg vil helst bare have et stabilt luksuriøst system, så jeg kan fokusere på at få scoret nogle af alle HF'erne, og helst uden at de griner af mig når værelsets lys ikke vil tænde fredag aften (det var så et sidespor
).
- UPDATE -
I må undskylde for at rode op i denne her tråd igen, men jeg følte at et tak var på sin plads... Jeg har læst godt op omkring interfaces og jeg føler selv at jeg så småt er ved at komme ind i vanen allerede.
Nu skriver jeg altid mit Interface først og så implementerer jeg det bagefter. Alle mine objekt variabler defineres som et givent interface og så referer de til min implementering af det interface.
Jeg kan godt se pointen i det her nu, det gør koden langt mere overskuelig at se på. Jeg er i øvrigt også begyndt at flytte nogle af mine ting ud i DLL filer, simpelthen fordi at de aldrig rigtig vil ændre sig igen og derfor tænkte jeg "Nåh ja, på denne her måde får jeg da ikke ødelagt noget ved et uheld".
Mit næste større dilemma bliver hvordan jeg skal kode TCP Serveren. Indtil nu har den kørt en tekstbaseret protokol hvor serveren parser beskederne ved brug af nogle regexes. Systemet er skam ganske robust men jeg føler ikke at det er optimalt (tænker ikke så meget performance mæssigt, så meget trafik er der ikke).
Jeg har tænkt lidt på at serialize et "Packet objekt" ind i streamen og så kunne det objekt have en Payload og så nogle properties der fortæller om det er krypteret og evt hvad type packet det er (Kommando, Information, Databaseforespørgsel etc.)
Lyder det helt hen i vejret? Apropos databaser. Jeg har haft lidt af hvert indtil videre. Startede med tekstfiler, så gik det videre til nogle XML agtige filer (ja det er stadig tekstfiler, men det var fremskridt), så kom jeg til Microsoft Access Databaser, og nu kører jeg Microsoft SQL CE.
Før i laver grin med mig og mine tekstfiler så var det mens programmet var i tidlig prototype og jeg slet ikke havde den vildeste idé om hvad det her ville ende i.
Jeg er egentlig godt tilfreds med SQL CE. For jeg kan let kopiere databasen frem og tilbage, og hastigheden er skam helt fin for projektet her. MEN man kan kun have en forbindelse til hver database af gangen, og det er noget af et drawback.
Jeg har overvejet at sætte en MySQL eller MSSQL server op i stedet. Grunden til jeg overvejer MySQL er at jeg faktisk har erfaring med at kode .NET løsninger mod MySQL hvor i mod jeg faktisk aldrig har anvendt MSSQL
.
Jeg får brug for en måde at lade andre computere tilgå databasen (i begrænset omfang), fx touchskærmen er nød til at kunne hente fingeraftryk ud til matching, og det skal gøres lokalt på touchskærmen hvor scanneren er sat til, grundet det SDK jeg anvender ikke virker på Windows 7.
Jeg tænkte på at sætte en database server op på hovedserveren der kører systemet og så havde en bruger med kun læse adgang til fingeraftrykkende og så tillade fjernforbindelser. Så kunne touchskærmen kommunikere direkte med databasen. Alternativet er at have en server lokalt (SQL Ce, MSSQL, MySQL?) og så selv skrive et interface hvor i gennem, at touchskærmen og andet software kunne forespørge den slags information. Dette ville selvfølgelig tillade størst kontrol, men jeg er bekymret rent performancemæssigt. Min nuværende server implementing er jo som nævnt tidligere tekstbaseret og med faste buffergrænser. Hvis jeg skal querie for 30+ fingeraftryk (Flere aftryk af hver finger for øget matching chance og flere forskellige personer, med flere forskellige fingre) og hver template er på omkring 200 - 300 kb, så tør jeg næsten ikke skrive det selv når det skal gå rigtig stærkt. Jeg er godt nok på 100mbit LAN men alligevel, så mærkes millisekunderne altså når man står foran døren og vil ind
.
Jeg har bare aldrig haft en blotlagt server før så jeg ved ikke om det er sikkert? Det er kun over for det lokale netværk, men jeg skriver hele systemet med sikkerhed for øje (for sjov skyld, men lige så meget for hvis jeg endda bliver uvenner med nogle andre nørder).
Sidste alternativ er at have en lokal database på touchskærmen som er synkroniseret med den pc hjemmeserveren, men jeg synes bare det er så "skrøbelig" og uprofessionel en løsning.
Ps. Når du har læst ovenstående bunke tekst, så undskylder jeg for at det blev til 698 ord.
Indlæg senest redigeret d. 25.09.2011 16:57 af Bruger #14381