Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.
Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.
Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.
Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).
Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.
Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.
Byla publikována Výroční zpráva Blender Foundation za rok 2024 (pdf).
Byl vydán Mozilla Firefox 143.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově se Firefox při ukončování anonymního režimu zeptá, zda chcete smazat stažené soubory. Dialog pro povolení přístupu ke kameře zobrazuje náhled. Obzvláště užitečné při přepínání mezi více kamerami. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 143 bude brzy k dispozici také na Flathubu a Snapcraftu.
Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.
Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.2 (𝕏, Mastodon). Přehled novinek, vylepšení a nových efektů v poznámkách k vydání.
Tiskni
Sdílej:
Tedy je to pořád lepší než ti, kteří kód píšou tak jak jim to IDECo? Ty si myslíš, že jseš v něčem lepší než já?
A take doporucuji
First off, I'd suggest printing out a copy of the GNU coding standards, and NOT read it. Burn them, it's a great symbolic gesture.
Kernel coding standards trvají na osmi mezerách. Podle mě je to overkillNow, some people will claim that having 8-character indentations makes the code move too far to the right, and makes it hard to read on a 80-character terminal screen. The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program.
if you need more than 3 levels of indentation, you're screwed anyway, and should fix your programTři? Pět je málo!
1 public void fce (int i, boolean b) { 2 switch (i) { 3 case 1: { 4 if (b) 5 if () akce(); else jina_akce(); else jeste_jina_akce;
public void fce (int i, boolean b) { switch (i) { case 1: if (b) { if () akce(); else jina_akce(); } else jeste_jina_akce; break; } }take nieco by ti spicoval aj gcc (a to nemyslim nedokoncenie funkcie)
gij
? :)
ja ich tam vidim len 5Metoda třídy se vnořuje o jednu úroveň oproti deklaraci třídy, to je ta šestá.
The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program.Zdá se, že to nebude jenom o kernelu, že?
enum AkceEnum { Akce1 { @Override public void doAction(boolean b, boolean c) { if (b) if (c) akce(); else jina_akce(); else jeste_jina_akce(); } }, Akce2 { @Override public void doAction(boolean b, boolean c) { // TODO } }; abstract public void doAction(boolean b, boolean c); } public void fce (AkceEnum akce, boolean b) { boolean c = false; akce.doAction(b, c); }Nebo pokud tam mermomocí potřebujete
switch
:
enum AkceEnum { Akce1, Akce2; } public void fce (AkceEnum akce, boolean b) { boolean c = false; switch(akce) { case Akce1: doAkce1(b); break; case Akce2: break; } } private void doAkce1(boolean b) { if (b) { if (this.c) this.akce(); else this.jina_akce(); } else this.jeste_jina_akce(); }
Na druhou stranu to ale může být i nevýhoda, právě proto, že je to proměnné v závislosti na použitém editoru.Ja to vidim jako vyhodu, kazdy si tu promenou muze nastavit se mu libi... IMHO editor, v kterem nejde nastavit, aby nemenil tabulatory na mezery, neni na programovani moc vhodny :)
Jo a když jsme u toho, délka řádky minimálně 100 znakůMinimálně nebo maximálně?
vetsi_projekt * vetsi_pocet_programatoru + tabulatory => spatna_citelnost_kodu
Makefile
rozlišuje mezery a tabulátory je celá kapitola v UNIX-Haters Handbooku. :)
asmlinkage int compat_sys_select(int n, compat_ulong_t __user *inp,
compat_ulong_t __user *outp, compat_ulong_t __user *exp,
struct compat_timeval __user *tvp);
[ tab ]asmlinkage int compat_sys_select(int n, compat_ulong_t __user *inp,
[ tab ]|||||||||||||||compat_ulong_t __user *outp, compat_ulong_t __user *exp,
[ tab ]|||||||||||||||struct compat_timeval __user *tvp);
Takové odsazení bez kombinace tabu a mezery nenapíšeteStačí používat mezery a napíšete
asmlinkage int compat_sys_select( int n, compat_ulong_t __user *inp, compat_ulong_t __user *outp, compat_ulong_t __user *exp, struct compat_timeval __user *tvp );A vystacim se 4 mezerama (tabulatorem). Nebo
asmlinkage int compat_sys_select( int n, compat_ulong_t __user *inp, compat_ulong_t __user *outp, compat_ulong_t __user *exp, struct compat_timeval __user *tvp );Ale prvni verze mi prijde nejprehlednejsi.
asmlinkage int compat_sys_select(int n,
compat_ulong_t __user *inp,
compat_ulong_t __user *outp,
compat_ulong_t __user *exp,
struct compat_timeval __user *tvp);
int i[,] = {{5, 7, 8, 0},
{7, 8, 9, 4}};
.... ( int n, ... ) { }pole dtto
void main () { } a void main() { }
V jednom nejmenovaném programovacím jazyku je konvence
begin ... end
void main () { }
int main(void)
{
...
}
int main (void) { int i; for (i = 0; i < 10; i++) { fputc(i + '0', stdout); } return 0; }První řádek je odsazen od těla funkce a je to tak přehlednější. Otevírací závorku cyklů a ifů dávám na nový řádek jen když je podmínka moc dlouhá a rozleze se to na více řádků. Mezi funkcema pak nechávám dva řádky prázdné.
Všechny závorky stejné úrovně jsou pak v jednom sloupci a je to přehlednější než když otevírací závorka je na řádku s deklarací někde vzádu vpravo. Ve škole máme prastarý Turbo Pascal a ten tam cpe furt ty pitomé mezery. Když si to pak otevřu třeba v Kate, tak se v tom tak špatně pracuje :-/void main() { }
if (něco) { blabla(); hello(); }
while (a == b) { nejaka_funkce (); }Což se mi tedy také nelíbí, ale pořád je to z optického hlediska milionkrát lepší než když je složená závorka na stejné úrovni jako ostatní blok v kódu. K&R prostě ruluje