uilightbaker's People
uilightbaker's Issues
Potential out of range exceptions
Op meerdere plekken heb je de kans om tegen een out-of-range exception aan te lopen.
Hier wordt een array gevuld met waardes.
Hier gaan we er vanuit dat sceneCountInBuildSettings
ondertussen niet veranderd is, in de praktijk zal dit niet snel gebeuren maar in theorie kan je hier redelijk makkelijk tegenaan lopen.
Potentially unwanted behaviour/baking of scenes
Wat je hier gaat doen is elke scene die in de scenebuild window zit bakken
Dit hangt samen met Issue #14
String.Format > string+ operator
Code styling
Probeer code styling (indenting, brace positions, spacing) consistent te houden, maakt de code vele malen makkelijker te lezen en onderhouden
Usability for end user
Dit hele script maakt erg veel aannames en gaat er vanuit dat de gebruiker alles altijd perfect opgezet heeft. Hoe zou je deze gegevens op een andere, misschien vriendelijkere, manier kunnen opvragen/krijgen zonder dat de gebruiker moet weten hoe het hele systeem precies werkt?
Aangezien het grootste deel van de informatie ook al opgevraagd/gegenereerd wordt door de code zou je kunnen overwegen om dit script argumenten te laten accepteren en daar alle informatie in te stoppen.
Voorbeeld:
Dit verwacht dat de gebruiker een bestand (genaamd param.txt) in dezelfde folder heeft staan met de juiste waardes en formaat (comma separated).
Consistency
Zelfs voor comments is het belangrijk om consistentie te bewaren, of elke regel met // beginnen of wrappen met /* ... */
Odd sleeping of thread
Als het idee is om de code 1 seconde te laten slapen kan je hier beter Thread.Sleep() gebruiken. Thread.Sleep() is een blokkende call terwijl Task.Delay() een sleep is zonder de thread vast te houden. Wat je hier gedaan hebt (await ...) maakt van Task.Delay() eigenlijk een Thread.Sleep()
Nitpicky variable naming
Dit is een super zeurderige maar probeer er voor te zorgen dat de variabel naam zelf al een hit geeft waar het voor gebruikt wordt.
Wat ik van toggleSD
krijg is:
- Het zal iets aan en uit zetten.
- SD staat voor 2 woorden, eerste woord begint met S en de 2e met D.
Stel je renamed het naar should_shutdown
:
- Het bepaalt of
iets
zal worden afgesloten, wat dat 'iets' is kom je achter door verder te lezen of omdat je toevallig weet dat dit script de PC kan afsluiten.
Unclear intent
Wat is het idee achter dit stuk code?
Waarom wordt alleen guids[0]
geopened?
UiLightBaker/UILightBaker/Editor/SceneSwitcher.cs
Lines 232 to 242 in ac59de1
Error handling
Wat zou er gebeuren als deze git calls falen?
Code formatting
Probeer code styling (indenting, brace positions, spacing) consistent te houden, maakt de code vele malen makkelijker te lezen en onderhouden
Potential always true condition
Ik heb EditorGUILayout.TextField nog niet eerder gebruikt maar ik kan me moeilijk voorstellen dat een lege null returned i.p.v. een empty string ("")
Unused class?
Word dit nog ergens gebruikt? Zo ja, kan het dan niet beter zijn eigen bestand krijgen?
Unused variable
Zie ik het verkeerd of is deze waarde nergens gebruikt? Ongebruikte variabelen kan je het beste weggooien, ze nemen geheugen en cpu ticks op die uiteindelijk nergens voor nodig zijn.
More than 1 class per file
Probeer 1 class per bestand aan te houden als standaard regel. De enige uitzondering die echt voor die regel bestaat zijn interne classes.
Consider Tuple<> or custom struct
In plaats van 2 arrays maken die aan elkaar gerelateerd zijn kan je ook één array maken die beide waardes voor je vast houdt.
Suggestion for maybe cleaner/filtered behaviour
Zou je hier ooit scenes in willen hebben zitten die niet mee gebuild zullen worden? Zo nee, overweeg dan om over EditorBuildSettings.scenes
heen te lopen ipv sceneCountInBuildSettings
te gebruiken. Het belangrijke verschil tussen deze 2 is dat je van EditorBuildSettings.scenes
een EditorBuildingSettingsScene
terugkrijgt waar extra informatie (zoals EditorBuildingSettingsScene.enabled
) in zit.
Potential overload of array?
Als er meerdere scenes worden toegevoegd nadat dit geïnitialiseerd is zal er meer in de array toegevoegd worden dan mag.
Boosdoener:
Overscoping of variables
Al deze variabelen zitten in de globale class scope, dit betekent dat ze geïnitialiseerd worden zodra een instantie van de class wordt aangemaakt en opgeruimd worden zodra de class out-of-scope gaat. Normaal gesproken wil je proberen variabel scoping zo precies mogelijk te houden.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.