- Dette emne har 19 svar og 7 stemmer, og blev senest opdateret for 2 år, 1 måned siden af Festival_H.
-
Emne
-
Så tager jeg den første. Det er godt nok ikke spil udvikling, men jeg tænker at vi også har en par almindelige udviklere på sitet også, der kunne have et input til denne case.
Sagen er den at jeg snart skal være med til at starte en nyt firma op og i den forbindelse skal vi også have startet en ny rundt bitness kode med til vores nye produkter. Det betyder at vi starter 100% blankt.
Jeg sidder i dag i et stort helvede af en code base situation. Jeg er glad for GIT og source control så alle mine projekter ligger på GitHub og jeg publicer alle mine projekter og committer alle mine ændringer til GitHub. Mine kollegaer elsker at pille direkte i source koden og gemme direkte i LIVE code for at kunne prøve ændringen med det samme uden build, publish og ingen commits. Det er primært forskellige web services vi udvikler. Ikke nok med det, men alle services ligger i forskellige afskygninger på forskellige FTP servers som ingen rigtig har et overblik over. Når en service går ned eller skal have implementeret en ny feature, så skal vi først finde en klient som kalder ind til den pågældende service for at finde den sti servicen ligger på og så kan vi rode den frem på en FTP server og få adgang til koden.
Jeg blir lead developer på det nyopstartende hold og har i tankerne at kræve at vi kører GitHub first. ALT skal ligge på GitHubben og det er Git der er Master. Hvis der er en udvikler der fumler direkte i live kode, så er det hans skyld hvis hans rettelser blir over skrevet af en publish fra Git. Det er synd fornuft efter min mening. Det problematiske kommer i den næste del.
Vi har i dag små bider af kode i stort set alle projekter der på den ene eller anden anden måde fx håndtere namespace i xml eller arbejder med mediatypes som PlainTest eller Json. Som det er i dag har alle projekter sin egen udgave af dette kode. Ingen code sharing med andre ord. Det vil jeg gerne indføre. Jo mere code sharing jo bedre. Jerg vil også gerne forsøge at gøre det nemt for kommende nye udvikler medarbejdere at finde ting. I stedet for at skulle browse rundt på forskellige FTP servers, så er min ide at lave en CompanyName solution der så skal indeholde alle vores projekter. På den måde blir det nemt at introducere kommende medarbejdere i ´hele kode basen og det blir nemt for alle projekter at få adgang til dele kode. Det kunne også sagtens være større helper classes nu hvor alle projekter vil blive slået sammen i en solution.
Jeg tænker at skulle kategorisere projekterne i projekt foldere i solutionen, men ellers have alt i den samme solution. Fordi der oftest er tale om webservices, så vil alle projekterne have deres publishing profile der fortæller præcis hvor projektet skal deployes når der skal publiceres. En ny udvikler skal derfor bare have adgang til FTP host serveren og så vil de kunne publisher nye udgivelser af vores projekter rimeligt hurtigt uden at vide hvor projekter ligger. Det er allerede indstillet på forhånd.
Mine anker er dog hvordan GitHub vil tage imod sådan en monolith af en solution! I starten vil der ikke være så mange, men det vil være min plan at alt nyt skal oprettes heri.
Og når der kommer mange projekter i, hvordan vil Visual Studio så begynde at opføre sig!!Der er sgu mange ting der kan gå galt her. Måske jeg bare skal prøve og viser det sig at være noget lort, så må jeg splitte det op. Så blir en solution folder til sin egen solution. Og skal den bruge noget delt kode så skal projektet addes til den solution og så må den referere dertil.
- Du skal være logget ind som bruger for at kunne svare...