C++ och dess framtid att programmera minnessäkert - Hur går utvecklingen?

Permalänk
Medlem
Skrivet av klk:

Det är väl ingen hemlighet att det är mest jag och Yoshman som postar kod? Annars är det tunt

Och om du tror (vilket jag inte tror att du tror) att det är första gången jag åker på kritik så har du fel.
Min bakgrund eller de miljöer jag jobbat i skiljer sig dock ganska kraftigt från vad som är normalt. Har i princip alltid jobbat med extrem tidspress för att få fram produkter snabbt. Då går det inte att använda sig av standardlösningar

Få är vana vid det

Kan det vara för att vi har framförallt har banala diskussioner om saker som är uppenbara och inte behöver kodexempel?
Varför ska jag lägga tid på att skiva kod åt dig när du?
1. Inte klarar att hänga med i ett logiskt resonemang.
2. Hoppar till ett nytt ämne när du tycker det är jobbigt.

Du klarar inte ens att hålla ett resonemang kring pseudokod följande för att du börjar diskutera returvärden istället för att hålla dig till diskussionen om namngivning.

int is_ready(); int foo() { if(is_ready()) { do_work(); } }

Vilket är lustigt när du själv postade din:

if (foo.is_true() == true) { ... }

Skrivet av klk:

Min bakgrund eller de miljöer jag jobbat i skiljer sig dock ganska kraftigt från vad som är normalt.

Så klar dom gör ...

Skrivet av klk:

Har i princip alltid jobbat med extrem tidspress för att få fram produkter snabbt. Då går det inte att använda sig av standardlösningar

Få är vana vid det

Säger du verkligen att det går snabbare att implementera något själv än att ta en färdig produkt?

Permalänk
Medlem
Skrivet av orp:

Säger du verkligen att det går snabbare att implementera något själv än att ta en färdig produkt?

Med DOD blir du extremt effektiv, det är vad jag säger

Permalänk
Medlem
Skrivet av klk:

Med DOD blir du extremt effektiv, det är vad jag säger

DOD eller inte DOD så utvecklar du inte något snabbare än att använda en färdig produkt.

Permalänk
Medlem
Skrivet av klk:

Med DOD blir du extremt effektiv, det är vad jag säger

Du klagar på att Rust är en sekt men du prediktar högre än hela Rust-communityn om DOD

Du ställer dig aldrig frågan varför DOD inte har fått ett genombrott brett inom industrin och open-source världen? Du frågar dig inte varför det framförallt är högljudda Youtubers inom spelindustrin som predikar om DOD?

Permalänk
Medlem
Skrivet av orp:

Du klagar på att Rust är en sekt men du prediktar högre än hela Rust-communityn om DOD

Du ställer dig aldrig frågan varför DOD inte har fått ett genombrott brett inom industrin och open-source världen? Du frågar dig inte varför det framförallt är högljudda Youtubers inom spelindustrin som predikar om DOD?

Klart jag frågar mig det, annars hade jag inte skrivit här
Och ta mitt lilla hobby projekt, sökverktyg finns massor av men med ganska lite knåpande kan man få ihop något som slår det mesta

Det är ju det som är så konstigt, DOD är inte svårt och det är uppenbart hur mycket lättare det blir att hantera kod

Permalänk
Medlem
Skrivet av klk:

Klart jag frågar mig det, annars hade jag inte skrivit här
Och ta mitt lilla hobby projekt, sökverktyg finns massor av men med ganska lite knåpande kan man få ihop något som slår det mesta

Det är ju det som är så konstigt, DOD är inte svårt och det är uppenbart hur mycket lättare det blir att hantera kod

Så vilka aktiva designval(enl. DOD) har du gjort i ditt sökverktyg som förenklar kodhanteringen?

Nu vet jag att du brukar ha svårt att tyda text så tänk på att det ska uppfylla kriterierna:
1. Det ska vara relaterat till DOD.
2. Det ska ha applicerats i kodbasen för ditt sökverktyg.
3. Det ska på ett objektivt sätt förenkla kodhanteringen.

Permalänk
Medlem
Skrivet av orp:

Så vilka aktiva designval(enl. DOD) har du gjort i ditt sökverktyg som förenklar kodhanteringen?

Nu vet jag att du brukar ha svårt att tyda text så tänk på att det ska uppfylla kriterierna:
1. Det ska vara relaterat till DOD.
2. Det ska ha applicerats i kodbasen för ditt sökverktyg.
3. Det ska på ett objektivt sätt förenkla kodhanteringen.

Förstår du koden i den här posten #20969374

Permalänk
Medlem
Skrivet av klk:

Förstår du koden i den här posten #20969374

Japp. Kan du svara på frågan min fråga nu?

Permalänk
Medlem
Skrivet av orp:

Japp. Kan du svara på frågan min fråga nu?

Räcker inte det?

Ta säkerhet/buggar. Taggar du data med något typsystem likt detta kommer det smälla direkt om koden är felaktig. Du kan bygga återanvändbar kod och där har du vinsten

Permalänk
Medlem
Skrivet av klk:

Räcker inte det?

Ta säkerhet/buggar. Taggar du data med något typsystem likt detta kommer det smälla direkt om koden är felaktig. Du kan bygga återanvändbar kod och där har du vinsten

Jag har redan ett fungerande typsystem så jag behöver inget hack till att hantera mina typer.

Nu skulle du förklara hur DOD och hur detta förenklar din kodhantering och vad jag vet om DOD så är detta inte relaterat till DOD.

Så vilka aktiva designval(enl. DOD) har du gjort i ditt sökverktyg som förenklar kodhanteringen?

Permalänk
Medlem
Skrivet av orp:

Jag har redan ett fungerande typsystem så jag behöver inget hack till att hantera mina typer.

Är det så du tolkar det så kanske det är dags och bättra på förståelse på hur du kan använda språk för att lösa problem, du har lösningen rätt framför ögonen

Permalänk
Medlem
Skrivet av klk:

Är det så du tolkar det så kanske det är dags och bättra på förståelse på hur du kan använda språk för att lösa problem, du har lösningen rätt framför ögonen

Vilka problem löser din kod som mitt typsystem inte löser?

Vad har det med DOD att göra?

Permalänk
Medlem
Skrivet av orp:

Vilka problem löser din kod som mitt typsystem inte löser?

Vad har det med DOD att göra?

Förstår du skillnaden mellan runtime och compile time, vad ett typsystem i runtime kan göra för dig?

Permalänk
Skrivet av klk:

Med DOD blir du extremt effektiv, det är vad jag säger

Är detta verkligen sant? Jag köper att du kan få bättre cache-beteende när du kör ditt program, men blir utvecklaren effektivare?

Vad är det som gör DOD-utvecklaren mer effektiv än en OOP-utvecklare?

Permalänk
Medlem
Skrivet av klk:

Förstår du skillnaden mellan runtime och compile time, vad ett typsystem i runtime kan göra för dig?

Vilka problem löser din kod som mitt typsystem inte löser?

Vad har det med DOD att göra?

Permalänk
Medlem
Skrivet av Ingetledigtnamn:

Är detta verkligen sant? Jag köper att du kan få bättre cache-beteende när du kör ditt program, men blir utvecklaren effektivare?

Vad är det som gör DOD-utvecklaren mer effektiv än en OOP-utvecklare?

Du kan skriva återanvändbar kod

Permalänk
Medlem
Skrivet av klk:

Förstår du skillnaden mellan runtime och compile time, vad ett typsystem i runtime kan göra för dig?

Jag förstår det mycket väl och därför håller jag mitt typsystem till compile time.

Jag gillar inte att lägga till hack och annan bloat i min produktionskod. Tror du att vi gillar att vaska minne på onödig skit inom embedded?

Har du med en GC också? Det låter som du försöker få C++ till att vara Python.

Permalänk
Medlem
Skrivet av orp:

Jag förstår det mycket väl och därför håller jag mitt typsystem till compile time.

Jag gillar inte att lägga till hack och annan bloat i min produktionskod. Tror du att vi gillar att vaska minne på onödig skit inom embedded?

Har du med en GC också? Det låter som du försöker få C++ till att vara Python.

Programmering handlar om att abstrahera problem, i flera steg görs något enklare och enklare för om man gör ett enda steg (hårdkodar) allt från användardomän till maskinkod då blir det jobbat om man gjort fel och får skriva om allt.

Programmering bör enligt mig fokusera på att skriva saker som snabbt kan ändras och därför är DOD som effektivt. Man börjar bygga från botten till kanske 90% är klart och det kan användas till mycket

De sista 10%en blir enklare att skriva än vad det är att skriva python om man tänkt till.

Problemet med programmerare i python är att de har svårt för att hantera mycket kod, de rör snabbt till det och det blir anpassat efter användardomänen. Alltså inte kod skriven för utvecklare

Permalänk
Tangentbordskonnässör

Jag får ont i magen.. Tänker inte ge någon kommentar alls att svara på nu, så @klk snälla svara bara på detta, du har klistrat in kod som inte är komplett, ser ut som enums bara, utgå ifrån att jag aldrig kodat C++ i ditt svar.
Kan du visa ett usecase för koden nedan?

eTypeUnknown = eTypeNumberUnknown, eTypeBool = eTypeNumberBool | eTypeGroupBoolean | eTypeGroupSize08, eTypeInt8 = eTypeNumberInt8 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize08 | eTypeGroupSigned, eTypeInt16 = eTypeNumberInt16 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize16 | eTypeGroupSigned, eTypeInt32 = eTypeNumberInt32 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize32 | eTypeGroupSigned, eTypeInt64 = eTypeNumberInt64 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize64 | eTypeGroupSigned, eTypeInt128 = eTypeNumberInt128 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize128 | eTypeGroupSigned, eTypeInt256 = eTypeNumberInt256 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize256 | eTypeGroupSigned, eTypeInt512 = eTypeNumberInt512 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize512 | eTypeGroupSigned, eTypeUInt8 = eTypeNumberUInt8 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize08, eTypeUInt16 = eTypeNumberUInt16 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize16, eTypeUInt32 = eTypeNumberUInt32 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize32, eTypeUInt64 = eTypeNumberUInt64 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize64, eTypeUInt128 = eTypeNumberUInt128 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize128, eTypeUInt256 = eTypeNumberUInt256 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize256, eTypeUInt512 = eTypeNumberUInt512 | (eTypeGroupInteger|eTypeGroupNumber) | eTypeGroupSize512, eTypeCFloat = eTypeNumberFloat | (eTypeGroupDecimal|eTypeGroupNumber) | eTypeGroupSize32 | eTypeGroupSigned, eTypeCDouble = eTypeNumberDouble | (eTypeGroupDecimal|eTypeGroupNumber) | eTypeGroupSize64 | eTypeGroupSigned, eTypePointer = eTypeNumberPointer, eTypeGuid = eTypeNumberGuid | eTypeGroupBinary | eTypeGroupSize128, eTypeBinary = eTypeNumberBinary | eTypeGroupBinary, eTypeString = eTypeNumberString | eTypeGroupString, eTypeUtf8String = eTypeNumberUtf8String | eTypeGroupString, eTypeWString = eTypeNumberWString | eTypeGroupString, eTypeUtf32String = eTypeNumberUtf32String | eTypeGroupString, eTypeJson = eTypeNumberJson | eTypeGroupString, eTypeXml = eTypeNumberXml | eTypeGroupString, eTypeVoid = eTypeNumberVoid, eTypeBit = eTypeNumberBit | eTypeGroupBoolean, eTypeRBinary = eTypeNumberBinary | eTypeGroupBinary | eTypeDetailReference, eTypeRString = eTypeNumberString | eTypeGroupString | eTypeDetailReference, eTypeRUtf8String = eTypeNumberUtf8String | eTypeGroupString | eTypeDetailReference, eTypeRWString = eTypeNumberUtf8String | eTypeGroupString | eTypeDetailReference

Permalänk
Medlem
Skrivet av klk:

Programmering handlar om att abstrahera problem, i flera steg görs något enklare och enklare för om man gör ett enda steg (hårdkodar) allt från användardomän till maskinkod då blir det jobbat om man gjort fel och får skriva om allt.

Programmering bör enligt mig fokusera på att skriva saker som snabbt kan ändras och därför är DOD som effektivt. Man börjar bygga från botten till kanske 90% är klart och det kan användas till mycket

De sista 10%en blir enklare att skriva än vad det är att skriva python om man tänkt till.

Problemet med programmerare i python är att de har svårt för att hantera mycket kod, de rör snabbt till det och det blir anpassat efter användardomänen. Alltså inte kod skriven för utvecklare

Vilket skämt. Detta är ditt standard svar, du har troligen 0 koll på DOD och bara slänger dig med uttryck som vanligt.

Vilka problem löser din kod som mitt typsystem inte löser?

Vad har det med DOD att göra?

Permalänk
Medlem
Skrivet av huttala:

utgå ifrån att jag aldrig kodat C++ i ditt svar.

ehhh.. DOD är inte speciellt svårt men det är inte lätt heller, mest för att det är ett annat sätt att tänka.

Kan också ta ett tag och bygga upp erfarenhet om kod, varför viss typ av kod blir jobbigare att arbeta med jämfört med annan typ av kod. Är man helt grön utvecklare, att det finns intresse men att personen precis kan skriva lite C kod. Då tippar jag på runt ett halvår med en bra mentor som kan det här, efter det har det klickat.

Det svåra idag är annars det jag exempelvis åker på i den här tråden, det är så många som VET hur man egentligen skall göra.
DOD är så löjligt effektivt så därför kan de som VET inte påverka, har de klickat kommer du aldrig att byta

Permalänk
Medlem
Skrivet av klk:

ehhh.. DOD är inte speciellt svårt men det är inte lätt heller, mest för att det är ett annat sätt att tänka.

Kan också ta ett tag och bygga upp erfarenhet om kod, varför viss typ av kod blir jobbigare att arbeta med jämfört med annan typ av kod. Är man helt grön utvecklare, att det finns intresse men att personen precis kan skriva lite C kod. Då tippar jag på runt ett halvår med en bra mentor som kan det här, efter det har det klickat.

Det svåra idag är annars det jag exempelvis åker på i den här tråden, det är så många som VET hur man egentligen skall göra.
DOD är så löjligt effektivt så därför kan de som VET inte påverka, har de klickat kommer du aldrig att byta

Fast det du postade är inte DOD så sitt inte och ljug nu

Permalänk
Medlem
Skrivet av orp:

Vilket skämt. Detta är ditt standard svar, du har troligen 0 koll på DOD och bara slänger dig med uttryck som vanligt.

Ta inte det här illa men jag har lärt upp flera andra utvecklare (också undervisat i avancerad C++).
Det tar fem minuter så vet man om det går.
Att personer med aspergers blir mycket skarpa kodare finns orsaker till. Du kan inte vara så känslomässig som du är, programmering är för ingenjörer

Permalänk
Medlem
Skrivet av klk:

Ta inte det här illa men jag har lärt upp flera andra utvecklare (också undervisat i avancerad C++).
Det tar fem minuter så vet man om det går.
Att personer med aspergers blir mycket skarpa kodare finns orsaker till. Du kan inte vara så känslomässig som du är, programmering är för ingenjörer

Oja, så klart du har. Varför förklarar du inte hur din kod är relaterad till DOD istället?

Permalänk
Skrivet av klk:

Du kan skriva återanvändbar kod

Ditt uttalande är helt korrekt, men det var väl ändå inte svar på min fråga? Du måste ha hoppat över ett par logiska steg i ditt resonemang för jag hänger inte med alls.

Du säger att med DOD kan man skriva återanvändbar kod.

Kan man inte skriva återanvändbar kod med hjälp av OOP-metodik?

Eller är det så DOD-kod mer återanvändbar än OOP-kod? Vilken egenskap hos DOD-utvecklad kod gör den mer återanvändbar?

Permalänk
Medlem
Skrivet av Ingetledigtnamn:

Ditt uttalande är helt korrekt, men det var väl ändå inte svar på min fråga? Du måste ha hoppat över ett par logiska steg i ditt resonemang för jag hänger inte med alls.

Du säger att med DOD kan man skriva återanvändbar kod.

Kan man inte skriva återanvändbar kod med hjälp av OOP-metodik?

Eller är det så DOD-kod mer återanvändbar än OOP-kod? Vilken egenskap hos DOD-utvecklad kod gör den mer återanvändbar?

Kan vi göra så här istället, om jag ber dig förklara hur du skriver återanvändbar kod så har jag något att relatera till (kanske hur jag skulle ha gjort), tror det blir enklare

Permalänk
Medlem
Skrivet av klk:

Kan vi göra så här istället, om jag ber dig förklara hur du skriver återanvändbar kod så har jag något att relatera till (kanske hur jag skulle ha gjort), tror det blir enklare

"Skriv min kod snälla", har du tagit dig vatten över huvudet igen?

Permalänk
Medlem
Skrivet av orp:

"Skriv min kod snälla", har du tagit dig vatten över huvudet igen?

Vet jag inte, beror på vad du menar. Har postat kod men det var ingen som nappade då
Koden här har mycket abstraherad (återanvänd) funktionalitet #20955298

Permalänk
Medlem
Skrivet av klk:

Vet jag inte, beror på vad du menar. Har postat kod men det var ingen som nappade då
Koden här har mycket abstraherad (återanvänd) funktionalitet #20955298

Kanske för att du pratar om DOD samtidigt som du visar ett hack till runtime typsystem...

Vi nappar inte eftersom det INTE är DOD-relaterat.

Permalänk
Tangentbordskonnässör
Skrivet av klk:

ehhh.. DOD är inte speciellt svårt men det är inte lätt heller, mest för att det är ett annat sätt att tänka.

Kan också ta ett tag och bygga upp erfarenhet om kod, varför viss typ av kod blir jobbigare att arbeta med jämfört med annan typ av kod. Är man helt grön utvecklare, att det finns intresse men att personen precis kan skriva lite C kod. Då tippar jag på runt ett halvår med en bra mentor som kan det här, efter det har det klickat.

Det svåra idag är annars det jag exempelvis åker på i den här tråden, det är så många som VET hur man egentligen skall göra.
DOD är så löjligt effektivt så därför kan de som VET inte påverka, har de klickat kommer du aldrig att byta

Nu har ja svårt att förstå varför dina enums är DOD. Så då kan du väl svara på min fråga istället för att samla om annat? Du kan ju plocka ut tre element från koden du skrev och göra ett use case på 2 minuter?