Het staat er niet letterlijk, maar ik vermoed dat het gaat om de "veiligheid". Hoe kleiner de scope hoe minder methodes en expressies er bij de variabele kunnen en eventueel met de waarde kunnen knoeien.quote:Op vrijdag 21 september 2018 11:34 schreef FlippingCoin het volgende:
[..]
Mooi zo, en en ook al waarom een kleinere scope beter is?
Ja precies.quote:Op vrijdag 21 september 2018 11:37 schreef uppie83 het volgende:
[..]
Het staat er niet letterlijk, maar ik vermoed dat het gaat om de "veiligheid". Hoe kleiner de scope hoe minder methodes en expressies er bij de variabele kunnen en eventueel met de waarde kunnen knoeien.
Waar ik stage liep wel. Maar niet alles.quote:Op vrijdag 21 september 2018 19:55 schreef uppie83 het volgende:
Even een ander soort vraag, wordt het bedenken en ontwerpen van een programma nog steeds gedaan in UML?
Sure, wellicht niet alles maar wrl veel. Is er een goed alternatief dan?quote:Op vrijdag 21 september 2018 19:55 schreef uppie83 het volgende:
Even een ander soort vraag, wordt het bedenken en ontwerpen van een programma nog steeds gedaan in UML?
Geen idee... ik ken alleen UML van lang lang lang geleden.quote:Op vrijdag 21 september 2018 21:42 schreef embedguy het volgende:
[..]
Sure, wellicht niet alles maar wrl veel. Is er een goed alternatief dan?
doorlopen van directories is veel makkelijker met een recursieve functie, vgl (pseudocode):quote:Op zondag 23 september 2018 19:26 schreef uppie83 het volgende:
Ben trouwens weer een stukje verder. Nu kwam het stuk over recursieve methoden/functies. Die vind ik wel lastig. Ik snap dat het gaat over methoden die zichzelf aanroepen. Maar naar wat ik er tot nu toe van begrijp zijn het eigenlijk een soort fancy loop-methoden. Waarom zou je dit dan verkiezen boven iets als een for of while loop?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | function listfiles(directory) { foreach(file in directory) { if (file is a file) doe iets met file if (file is a directory) listfiles(directory + file) } } //loop door directory listfiles("C:\") vs function listfilesrecursive(directory) { directorylist=[] directorylist.add(directory) while(directorylist.Count > 0) { var directory = directorylist.RemoveLast; foreach(file in directory) { if (file is a file) doe iets met file if (file is a directory) directorylist.add(directory + file) } } } |
Heb je een vak data structuren en algoritmen of zo iets? Daar komt dit wel weer terug iig.quote:Op zondag 23 september 2018 19:26 schreef uppie83 het volgende:
[..]
Geen idee... ik ken alleen UML van lang lang lang geleden.
Ben trouwens weer een stukje verder. Nu kwam het stuk over recursieve methoden/functies. Die vind ik wel lastig. Ik snap dat het gaat over methoden die zichzelf aanroepen. Maar naar wat ik er tot nu toe van begrijp zijn het eigenlijk een soort fancy loop-methoden. Waarom zou je dit dan verkiezen boven iets als een for of while loop?
Is het dan toch ook een kwestie van 'smaak'?quote:Op zondag 23 september 2018 23:07 schreef ralfie het volgende:
[..]
doorlopen van directories is veel makkelijker met een recursieve functie, vgl (pseudocode):
[ code verwijderd ]
Recursieve functies zijn zo veel makkerlijker te schrijven, maar hebben ook beperkingen zoals dat sommige talen die diepte waarop je recursief functies kan blijven aanroepen beperkt is, en dat dit soms minder efficient is als met een list werken. Zelf gebruik ik het liefste optie 2, maar optie 1 is verreweg makkelijker te begrijpen en schrijven.
Bomen ben ik nog niet, denk ook niet dat dit behandeld wordt in dit boek. Dit is hoofdstuk 6 van 'A Beginner's Guide'. Daarnaast heb ik geen vakkenquote:Op zondag 23 september 2018 23:22 schreef FlippingCoin het volgende:
[..]
Heb je een vak data structuren en algoritmen of zo iets? Daar komt dit wel weer terug iig.
Maakt inderdaad het doorlopen van bomen een stuk makkelijker.
Ah excuus ik dacht dat jij ook een student was. Wat wel leuk is, eens een bepaalde boom structuur te programmeren en een zoek algoritme en jezelf daarin wat te verdiepen.quote:Op maandag 24 september 2018 10:31 schreef uppie83 het volgende:
[..]
Is het dan toch ook een kwestie van 'smaak'?
[..]
Bomen ben ik nog niet, denk ook niet dat dit behandeld wordt in dit boek. Dit is hoofdstuk 6 van 'A Beginner's Guide'. Daarnaast heb ik geen vakken
oh codinggame.com heeft daar een paar leuke opdrachten in. (online code schrijven, in ELKE taal die je leuk vindt) die ik zelf ook eens wil gaan maken.quote:Op maandag 24 september 2018 11:33 schreef FlippingCoin het volgende:
[..]
Ah excuus ik dacht dat jij ook een student was. Wat wel leuk is, eens een bepaalde boom structuur te programmeren en een zoek algoritme en jezelf daarin wat te verdiepen.
Recursie gaat wel wat verder dan een voorkeur iig, soms is het de beste oplossing.
Klinkt goed ga ik ook eens proberen.quote:Op maandag 24 september 2018 11:35 schreef cablegunmaster het volgende:
[..]
oh codinggame.com heeft daar een paar leuke opdrachten in. (online code schrijven, in ELKE taal die je leuk vindt) die ik zelf ook eens wil gaan maken.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | static void Main(string[] args) { Console.WriteLine("Enter Score: "); string invoerScore = Console.ReadLine(); int score = int.Parse(invoerScore); if (score > 69) { Console.WriteLine("Course passed"); } else { Console.WriteLine("Course not passed"); } switch (score) { case 90 - 100: Console.WriteLine("Grade A"); break; case 80 - 89: Console.WriteLine("Grade B"); break; case 70 - 79: Console.WriteLine("Grade C"); break; case 60 - 69: Console.WriteLine("Grade D"); break; case 0 - 59: Console.WriteLine("Grade F"); break; default: Console.WriteLine("Enter score between 0 and 100! "); break; } Console.ReadKey(); } |
Switch is een grote IF ELSE statement.quote:Op dinsdag 25 september 2018 08:35 schreef Luppie0110 het volgende:
Met andere woorden, wat moet ik achter de ''case'' zetten? 90 - 100 werkt bijvoorbeeld niet. Of zou ik alles met if/ else if moeten doen?
Ah daar zijn de bitwise operators weerquote:Op dinsdag 25 september 2018 13:46 schreef cablegunmaster het volgende:
Vanavond verder met bitshiften en kijken hoe het werkt. Ik voel me gelijk een jaren 1980 programmeur. Bitjes tellen en kijken of het klopt .
Wat ga je er mee maken dan?quote:Op dinsdag 25 september 2018 13:46 schreef cablegunmaster het volgende:
Vanavond verder met bitshiften en kijken hoe het werkt. Ik voel me gelijk een jaren 1980 programmeur. Bitjes tellen en kijken of het klopt .
Websocket Exchanging data frames ben ik nu mee bezig.quote:Op dinsdag 25 september 2018 16:45 schreef FlippingCoin het volgende:
[..]
Wat ga je er mee maken dan?
Hoe noteer ik het juist achter de case? Als ik noteer zoals jij dan werkt het niet.quote:Op dinsdag 25 september 2018 10:19 schreef FlippingCoin het volgende:
case > 90
case > 80
case > 70 et cetera
Of
case < 60
case < 70 ...
score eerst door 10 delen. Integers worden standaard getruncated, dus werkt prima. C# ondersteunt geen ranges bij case statements.quote:Op dinsdag 25 september 2018 08:35 schreef Luppie0110 het volgende:
[ code verwijderd ]
Heren, even een vraag. Hoe kan ik ervoor zorgen dat de ingevoerde score in categorie Grade A/B/C/D/F valt?
Met andere woorden, wat moet ik achter de ''case'' zetten? 90 - 100 werkt bijvoorbeeld niet. Of zou ik alles met if/ else if moeten doen?
Overigens is dit in C#.
Helder. Thanks!quote:Op dinsdag 25 september 2018 19:03 schreef ralfie het volgende:
[..]
score eerst door 10 delen. Integers worden standaard getruncated, dus werkt prima. C# ondersteunt geen ranges bij case statements.
Heeft C# een range operator op die manier?quote:Op dinsdag 25 september 2018 19:03 schreef ralfie het volgende:
[..]
score eerst door 10 delen. Integers worden standaard getruncated, dus werkt prima. C# ondersteunt geen ranges bij case statements.
vanaf c# v 7 is er trouwens ookquote:
100/10 -> 10quote:Op dinsdag 25 september 2018 19:09 schreef FlippingCoin het volgende:
[..]
Heeft C# een range operator op die manier?
Oh op die manier ik dacht al. Maar waarom zou je dat verkiezen over de groter dan operator?quote:Op dinsdag 25 september 2018 19:12 schreef ralfie het volgende:
[..]
100/10 -> 10
99/10 -> 9
92/10 -> 9
88/10 -> 8
etc.
omdat case > 9 niet kan maar case 9 wel:quote:Op dinsdag 25 september 2018 19:15 schreef FlippingCoin het volgende:
[..]
Oh op die manier ik dacht al. Maar waarom zou je dat verkiezen over de groter dan operator?
Oh oké dat wist ik niet dacht dat de switch case overal gelijk was.quote:Op dinsdag 25 september 2018 19:19 schreef ralfie het volgende:
[..]
omdat case > 9 niet kan maar case 9 wel:
select (score/10)
{
case 10://100
case 9://99-90
etc
}
Klasse die een interface implementeert.quote:Op woensdag 26 september 2018 21:31 schreef uppie83 het volgende:
Momenteel in het hoofdstuk over interfaces. Van de volgende zin weet ik even niet exact wat er bedoeld wordt:
"If a class includes an interface but does not fully implement the methods defined by that interface, then that class must be declared as abstract."
Bedoelen ze hier de class die de interface implementeert? Of bedoelen ze hier een interface die genest is in een class? Misschien nog iets anders?
1 2 3 4 5 6 | interface CleanUpProtocol { removeStuff(); dustRoom(); } |
1 2 3 4 5 6 7 8 9 10 11 | public class Cleaner implements iCleanupProtocol { public void removeStuff(){ //do stuff. } public void dustRoom(){ //do dust. } } |
Bedankt voor de uitleg, het is weer helder!quote:Op donderdag 27 september 2018 07:56 schreef cablegunmaster het volgende:
[..]
Klasse die een interface implementeert.
Want een interface is een contract.
...
Meer voorbeelden:
https://o7planning.org/en(...)nd-interface-in-java
Misschien eens spelen met een Arduino of iets vergelijkbaars. Dan leer je het snel zat.quote:Op vrijdag 28 september 2018 09:49 schreef cablegunmaster het volgende:
Zelf wil ik bitwise operators leren maar begrijp ik ze nog niet helemaal .
Niemand echt denk ik, afaik wordt het alleen maar gebruikt op universiteiten. Nooit echt in het bedrijfsleven, behalve dan een beetje met JavaScript.quote:Op vrijdag 28 september 2018 15:05 schreef FlippingCoin het volgende:
Iemand hier ervaring met functioneel programmeren?
Ik zie er steeds meer talks over voorbij komen en vind de gedachte erachter niet verkeerd eigenlijk. Wel inderdaad aan de front-end allemaal. Vooral React gaat steeds meer funtioneel, zelfs tot purescript. Ik snap alleen niet als je bijvoorbeeld een wizard menu hebt, normaal maak je een object en die vul je gewoon in bijvoorbeeld in drie stappen aan.quote:Op zaterdag 29 september 2018 13:39 schreef embedguy het volgende:
[..]
Niemand echt denk ik, afaik wordt het alleen maar gebruikt op universiteiten. Nooit echt in het bedrijfsleven, behalve dan een beetje met JavaScript.
Zelf een beetje aan het hobbyen met React Redux (voor state management in React applicaties). Zitten ook wat functionele aspecten aan waar ze leuke voordelen uit weten te halen.
Hmmm, ik ben er ook nogal onbekend mee. Net even een presentatie bekeken van Purescript. Ik kende het niet eens.quote:Op zaterdag 29 september 2018 13:55 schreef FlippingCoin het volgende:
[..]
Ik zie er steeds meer talks over voorbij komen en vind de gedachte erachter niet verkeerd eigenlijk. Wel inderdaad aan de front-end allemaal. Vooral React gaat steeds meer funtioneel, zelfs tot purescript. Ik snap alleen niet als je bijvoorbeeld een wizard menu hebt, normaal maak je een object en die vul je gewoon in bijvoorbeeld in drie stappen aan.
Zou je volgens het functionele paradigma een map gebruiken in combinatie met gecurryde(? geen hoe je dat Nederlands schrijft) functies?
Nou voor mijn app heb ik een menu verspreid over drie schermen, een soort wizard menu. Eerste scherm selecteer je een winkel, tweede scherm met wie je de lijst wil delen et cetera.quote:Op zaterdag 29 september 2018 15:21 schreef embedguy het volgende:
[..]
Hmmm, ik ben er ook nogal onbekend mee. Net even een presentatie bekeken van Purescript. Ik kende het niet eens.
Ik snap je vraag over de wizard menu niet helemaal. Bedoel je iets met React icm Purescript?
Wel interessante materie 😇
Van welke stack maak je gebruik? React, Context API, TypeScript?quote:Op zaterdag 29 september 2018 15:27 schreef FlippingCoin het volgende:
[..]
Nou voor mijn app heb ik een menu verspreid over drie schermen, een soort wizard menu. Eerste scherm selecteer je een winkel, tweede scherm met wie je de lijst wil delen et cetera.
Normaal zou ik een Lijst object maken, en per scherm de attributen van dat object invoeren.
Volgens het functionele paradigma is een mutatie van state ongewenst, dan vraag ik mij af hoe je dit het beste aan kan pakken. Een oplossing zou zijn een curried function, waarbij je de argumenten in meerdere stappen kan geven en in de tussentijd de functies bewaart. Maar of dat de beste manier is weet ik niet echt.
Ізгі тілектер Flip.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | import React from "react"; interface Menu { options: string[]; selected?: number; } interface MenuWizardResult { menus: Menu[]; } interface MenuWizardState extends MenuWizardResult{ menuIndex: number; } interface AppState { menuWizard: MenuWizardState; otherComponent: OtherComponentState; showWizard: boolean; } class App extends React.Component<AppState> { constructor(props) { super(props); this.state = { menuWizard: { menus: [ { options: ["winkel 1", "winkel 2", "winkel 3"]}, { options: ["option 1", "option 2", "option 3"]}, { options: ["option 1", "option 2", "option 3"]}, ], menuIndex = 0, }, otherComponent: {}. showWizard: true, }; } render() { if (!this.state.showWizard) { return <OtherComponent options={this.state.otherComponent} setState={(newState) => this.setState(newState)} />; } else { return <MenuWizard options={this.state.menuWizars} setState={(newState) => { const menuWizardFinished = newState.menuWizardState.menus.find((menu) => menu.selected === undefined) === undefined; if (menuWizardFinished) { // handle results } this.setState({ ...this.state, showWizard: !menuWizardFinished, menuWizardState: newState }); }} />; } } } const MenuWizard = ({options, setState}) => { return <StatelessMenuWindow options={options.menu[options.menuIndex]} selectOption={(index: number) => { const newState = { ...options, menuIndex: options.menuIndex+1, }; newState.menus[options.menuIndex] = { ...newState.menus[options.menuIndex], selected: index }; setState(newState); }} />; } |
TypeScript ja, even bekijken.quote:Op zaterdag 29 september 2018 21:10 schreef embedguy het volgende:
[..]
Van welke stack maak je gebruik? React, Context API, TypeScript?
Wat ik zo snel bedenk;
[ code verwijderd ]
Disclaimer; op de mobiel getypt. En dit hopeloos op een mobiel, dus nu ren ik even naar de pc om het netter te maken .
Aja, heb de code wat netter gemaakt. Ik wist overigens niet zeker wat je bedoelde met de menuwizard. Ik hoop dat je zoiets bedoelde als in mijn voorbeeld. Zelf ook nog geen ervaring met die stateless functionele react componenten, wel interessant om even in te verdiepen .quote:Op zaterdag 29 september 2018 21:10 schreef FlippingCoin het volgende:
[..]
TypeScript ja, even bekijken.
Z poważaniem Flip.
Thanks zal het morgen even rustig bekijken.quote:Op zaterdag 29 september 2018 22:29 schreef embedguy het volgende:
[..]
Aja, heb de code wat netter gemaakt. Ik wist overigens niet zeker wat je bedoelde met de menuwizard. Ik hoop dat je zoiets bedoelde als in mijn voorbeeld. Zelf ook nog geen ervaring met die stateless functionele react componenten, wel interessant om even in te verdiepen .
Ga je met flux of redux werken?quote:Op zaterdag 29 september 2018 22:44 schreef FlippingCoin het volgende:
[..]
Thanks zal het morgen even rustig bekijken.
Heb net ook een boek gevonden over functioneel programmeren in ES6 van 180 bladzijden of zo. Ook maar eens doorlezen.
Ziet er op het eerste gezicht wel handig eruit ja, ga ik onthouden al ben ik zelf niet zo van webbases apps. Zelf gebruik ik yEd, werkt wel aardig. Iig 100x beter dan Visio imho.quote:Op dinsdag 2 oktober 2018 14:25 schreef cablegunmaster het volgende:
Eindelijk een goed UML / diagam teken programma gevonden.
https://www.draw.io/
Opensource, download het als standalone app.quote:Op dinsdag 2 oktober 2018 21:17 schreef embedguy het volgende:
[..]
Ziet er op het eerste gezicht wel handig eruit ja, ga ik onthouden al ben ik zelf niet zo van webbases apps. Zelf gebruik ik yEd, werkt wel aardig. Iig 100x beter dan Visio imho.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |