Website Review


Entrez domaine


← Cliquez pour mettre à jour
herbsutter.com

Evaluation du site herbsutter.com

 Généré le 21 Avril 2021 09:39

Vieilles statistiques? UPDATE !


Le score est de 61/100

Optimisation du contenu

Titre

Sutter’s Mill – Herb Sutter on software development



Longueur : 51

Parfait, votre titre contient entre 10 et 70 caractères.
Description

Herb Sutter on software development



Longueur : 35

Idéalement, votre balise META description devrait contenir entre 70 et 160 caractères (espaces compris). Utilisez cet outil gratuit pour calculer la longueur du texte.
Mots-clefs



Très mauvais. Nous n'avons pas trouvé de balise META keywords sur votre page. Utilisez ce générateur gratuit de balises META en ligne pour créer des mots-clés.
Propriétés Open Graph Bien, cette page profite des balises META Open Graph.
Propriété Contenu
type website
title Sutter’s Mill
description Herb Sutter on software development
url https://herbsutter.com/
site_name Sutter’s Mill
image https://secure.gravatar.com/blavatar/4554b8d24c7f200dc5e2e1b18db1893f?s=200&ts=1618990786
image:width 200
image:height 200
locale en_US
Niveaux de titre
H1 H2 H3 H4 H5 H6
27 53 13 0 0 0
  • [H1] Sutter’s Mill
  • [H1] GotW #101 Solution: Preconditions, Part 2 (Difficulty: 7/10)
  • [H1] Notes
  • [H1] Acknowledgments
  • [H1] GotW #101: Preconditions, Part 2 (Difficulty: 7/10)
  • [H1] Notes
  • [H1] GotW #100 Solution: Preconditions, Part 1 (Difficulty: 8/10)
  • [H1] Notes
  • [H1] Acknowledgments
  • [H1] Trip report: Winter 2021 ISO C++ standards meeting (virtual)
  • [H1] GotW #100: Preconditions, Part 1 (Difficulty: 8/10)
  • [H1] Notes
  • [H1] GotW #99 Solution: Postconditions (Difficulty: 7/10)
  • [H1] Notes
  • [H1] Acknowledgments
  • [H1] GotW #99: Postconditions (Difficulty: 7/10)
  • [H1] Notes
  • [H1] GotW #98 Solution: Assertion levels (Difficulty: 5/10)
  • [H1] Notes
  • [H1] Acknowledgments
  • [H1] GotW #98: Assertion levels (Difficulty: 5/10)
  • [H1] GotW #97 Solution: Assertions (Difficulty: 4/10)
  • [H1] Notes
  • [H1] Acknowledgments
  • [H1] Follow by email
  • [H1] Tweets
  • [H1] Archives
  • [H2] 1. Consider these functions, expanded from an article by Andrzej Krzemieński: [1] … How many ways could a caller of each function get the arguments wrong, but that would silently compile without error? Name as many different ways as you can.
  • [H2] (a) is_in_values (int val, int min, int max)
  • [H2] (b) is_in_container (int val, int idx_min, int idx_max)
  • [H2] (c) is_in_range (T val, Iter first, Iter last)
  • [H2] 2. Show how can you improve the function declarations in Question 1 by …
  • [H2] (a) just grouping parameters, using a struct with public variables
  • [H2] (b) just using an encapsulated class, using a class with private variables (an abstraction with its own invariant)
  • [H2] (c) just using post-C++20 contract preconditions (not yet valid C++, but something like the syntax in [2])
  • [H2] 3. Consider these three examples, where each shows expressing a boolean condition either as a function precondition or as an encapsulated invariant inside a new type… In each of these cases, which way is better? Explain your answer.
  • [H2] JG Question
  • [H2] Guru Questions
  • [H2] 1. What is a precondition, and how is it related to an assertion?
  • [H2] Explain your answer using the following example, which uses a variation of a proposed post-C++20 syntax for preconditions. [1]
  • [H2] 2. Rewrite the example in Question 1 to show how to approximate the same effect using assertions in today’s C++.
  • [H2] Are there any drawbacks to your solution compared to having language support for preconditions?
  • [H2] 3. If a precondition fails, what does that indicate, and who is responsible for fixing the failure?
  • [H2] Explain how this makes a precondition fundamentally different from every other kind of contract.
  • [H2] 4. Consider this example, expanded from a suggestion by Gábor Horváth:
  • [H2] a) What kinds of preconditions must a caller of calc satisfy that can’t generally be written as testable boolean expressions?
  • [H2] b) What kinds of boolean-testable preconditions are implicit within the explicitly written declaration of calc?
  • [H2] c) Should any of these boolean-testable implicit preconditions also be written explicitly here in this precondition code? Explain.
  • [H2] Our virtual 2021
  • [H2] Today: A few more C++23 features adopted
  • [H2] What’s next
  • [H2] JG Question
  • [H2] Guru Questions
  • [H2] 1. What is a postcondition, and how is it related to an assertion?
  • [H2] Explain your answer using the following example, which uses a variation of a proposed post-C++20 syntax for postconditions. [1]
  • [H2] 2. Rewrite the example in Question 1 to show how to approximate the same effect using assertions in today’s C++. Are there any drawbacks to your solution compared to having language support for postconditions?
  • [H2] 3. Should a postcondition be expected to be true if the function throws an exception back to the caller?
  • [H2] Justify your answer with example(s).
  • [H2] 4. Should postconditions be able to refer to both the initial (on entry) and final (on exit) value of a parameter, if those could be different?
  • [H2] If so, give an example.
  • [H2] JG Question
  • [H2] Guru Questions
  • [H2] 1. Give one example each of an asserted condition whose run-time evaluation is:
  • [H2] a) super cheap
  • [H2] b) arbitrarily expensive
  • [H2] 2. What does the answer to Question 1 imply for assertion checking? Explain.
  • [H2] 3. Give an example of an asserted condition that is in general impossible to evaluate, and so cannot be checked.
  • [H2] Can these kinds of conditions still be useful?
  • [H2] 4. How do these questions help answer:
  • [H2] a) what “levels” of asserted conditions we should be able to express?
  • [H2] b) why the assertions we can “practically” write are a subset of all the ones we might “ideally” like to write?
  • [H2] JG Questions
  • [H2] Guru Questions
  • [H2] 1. What is an assertion, and what is it used for?
  • [H2] 2. C++20 supports two main assertion facilities… For each one, briefly summarize how it works, when it is evaluated, and whether it is possible for the programmer to specify a message to be displayed if the assertion fails.
  • [H2] 3. If an assertion fails, what does that indicate, and who is responsible for fixing the failure?
  • [H2] 4. Are assertions primarily about checking at compile time, at test time, or at run time? Explain.
  • [H2] Posts navigation
  • [H2]
  • [H2]
  • [H3] (a) A vector that is sorted
  • [H3] // (b) A vector that is not empty
  • [H3] (c) A pointer that is not null
  • [H3] (1) Type invariants
  • [H3] (2) Subexpression preconditions
  • [H3] (3) Subexpressions that make the whole precondition false
  • [H3] Putting it all together
  • [H3] Option 1 (basic): Named return object + an exit guard
  • [H3] Option 2 (better): “return post” postcondition pattern
  • [H3] Option 3 (mo’betta): Wrapping up option 2… with a macro
  • [H3] assert
  • [H3] static_assert
  • [H3] Bonus: [[assert: ?
Images Nous avons trouvé 5 image(s) sur cette page Web.

5 attribut(s) alt sont vides ou manquants. Ajouter un texte alternatif permet aux moteurs de recherche de mieux comprendre le contenu de vos images.
Ratio texte/HTML Ratio : 16%

Bien, le ratio de cette page texte/HTML est supérieur à 15, mais inférieur à 25 pour cent.
Flash Parfait, aucun contenu FLASH n'a été détecté sur cette page.
Iframe Génial, il n'y a pas d'Iframes détectés sur cette page.

Réécriture d'URLs Bien. Vos liens sont optimisés!
Tiret bas dans les URLs Parfait! Aucuns soulignements détectés dans vos URLs.
Liens dans la page Nous avons trouvé un total de 197 lien(s) dont 2 lien(s) vers des fichiers



Texte d'ancre Type Juice
Skip to content Interne Passing Juice
Sutter’s Mill Interne Passing Juice
GotW #101 Solution: Preconditions, Part 2 (Difficulty: 7/10) Interne Passing Juice
GotW #98 Interne Passing Juice
“Contracts, preconditions and invariants” Externe Passing Juice
“P0542: Support for contract based programming in C++” Externe Passing Juice
P0515 Externe Passing Juice
P0893 Externe Passing Juice
“I.12 Declare a pointer that must not be null as not_null” Externe Passing Juice
Herb Sutter Interne Passing Juice
C++ Interne Passing Juice
GotW Interne Passing Juice
Uncategorized Interne Passing Juice
9 Comments Interne Passing Juice
GotW #101: Preconditions, Part 2 (Difficulty: 7/10) Interne Passing Juice
GotW #100 Solution: Preconditions, Part 1 (Difficulty: 8/10) Interne Passing Juice
#97 Interne Passing Juice
#99 Interne Passing Juice
Trip report: Winter 2021 ISO C++ standards meeting (virtual) Interne Passing Juice
priorities Externe Passing Juice
schedule Externe Passing Juice
P1102 Externe Passing Juice
P2259 Externe Passing Juice
P2017 Externe Passing Juice
P2212 Externe Passing Juice
P2162 Externe Passing Juice
P1682 Externe Passing Juice
P0533 Externe Passing Juice
Upcoming Meetings page Externe Passing Juice
2 Comments Interne Passing Juice
GotW #100: Preconditions, Part 1 (Difficulty: 8/10) Interne Passing Juice
4 Comments Interne Passing Juice
“P0052: Generic Scope Guard and RAII Wrapper for the Standard Library” Externe Passing Juice
“Change the Way You Write Exception-Safe Code – Forever” Externe Passing Juice
compose Externe Passing Juice
11 Comments Interne Passing Juice
GotW #99: Postconditions (Difficulty: 7/10) Interne Passing Juice
5 Comments Interne Passing Juice
assumes what we want to prove Externe Passing Juice
4 Comments Interne Passing Juice
GotW #98: Assertion levels (Difficulty: 5/10) Interne Passing Juice
11 Comments Interne Passing Juice
shift-left Externe Passing Juice
shift-right Externe Passing Juice
belt-and-suspenders Externe Passing Juice
“Planning and Coding of problems for an Electronic Computing Instrument” Externe Passing Juice
“Checking a Large Routine” Externe Passing Juice
“P0542: Support for contract based programming in C++” Externe Passing Juice
spdlog: Fast C++ logging library Externe Passing Juice
Event Tracing for Windows (ETW) Externe Passing Juice
“P2064: Assumptions” Externe Passing Juice
18 Comments Interne Passing Juice
Older posts Interne Passing Juice
Tweets Externe Passing Juice
isocpp Externe Passing Juice
bit.ly/3rSiLGF Externe Passing Juice
#cpp Externe Passing Juice
2 weeks ago Externe Passing Juice
March 2021 Interne Passing Juice
February 2021 Interne Passing Juice
January 2021 Interne Passing Juice
December 2020 Interne Passing Juice
November 2020 Interne Passing Juice
October 2020 Interne Passing Juice
September 2020 Interne Passing Juice
July 2020 Interne Passing Juice
June 2020 Interne Passing Juice
May 2020 Interne Passing Juice
April 2020 Interne Passing Juice
March 2020 Interne Passing Juice
February 2020 Interne Passing Juice
November 2019 Interne Passing Juice
October 2019 Interne Passing Juice
September 2019 Interne Passing Juice
July 2019 Interne Passing Juice
June 2019 Interne Passing Juice
May 2019 Interne Passing Juice
April 2019 Interne Passing Juice
February 2019 Interne Passing Juice
November 2018 Interne Passing Juice
September 2018 Interne Passing Juice
July 2018 Interne Passing Juice
April 2018 Interne Passing Juice
November 2017 Interne Passing Juice
October 2017 Interne Passing Juice
September 2017 Interne Passing Juice
July 2017 Interne Passing Juice
June 2017 Interne Passing Juice
March 2017 Interne Passing Juice
February 2017 Interne Passing Juice
November 2016 Interne Passing Juice
September 2016 Interne Passing Juice
June 2016 Interne Passing Juice
March 2016 Interne Passing Juice
October 2015 Interne Passing Juice
September 2015 Interne Passing Juice
July 2015 Interne Passing Juice
June 2015 Interne Passing Juice
May 2015 Interne Passing Juice
April 2015 Interne Passing Juice
January 2015 Interne Passing Juice
December 2014 Interne Passing Juice
November 2014 Interne Passing Juice
October 2014 Interne Passing Juice
September 2014 Interne Passing Juice
August 2014 Interne Passing Juice
July 2014 Interne Passing Juice
May 2014 Interne Passing Juice
April 2014 Interne Passing Juice
March 2014 Interne Passing Juice
February 2014 Interne Passing Juice
January 2014 Interne Passing Juice
December 2013 Interne Passing Juice
November 2013 Interne Passing Juice
October 2013 Interne Passing Juice
September 2013 Interne Passing Juice
August 2013 Interne Passing Juice
July 2013 Interne Passing Juice
June 2013 Interne Passing Juice
May 2013 Interne Passing Juice
April 2013 Interne Passing Juice
March 2013 Interne Passing Juice
February 2013 Interne Passing Juice
January 2013 Interne Passing Juice
December 2012 Interne Passing Juice
November 2012 Interne Passing Juice
October 2012 Interne Passing Juice
September 2012 Interne Passing Juice
August 2012 Interne Passing Juice
July 2012 Interne Passing Juice
June 2012 Interne Passing Juice
May 2012 Interne Passing Juice
April 2012 Interne Passing Juice
March 2012 Interne Passing Juice
February 2012 Interne Passing Juice
January 2012 Interne Passing Juice
December 2011 Interne Passing Juice
November 2011 Interne Passing Juice
October 2011 Interne Passing Juice
September 2011 Interne Passing Juice
August 2011 Interne Passing Juice
July 2011 Interne Passing Juice
June 2011 Interne Passing Juice
May 2011 Interne Passing Juice
April 2011 Interne Passing Juice
March 2011 Interne Passing Juice
January 2011 Interne Passing Juice
December 2010 Interne Passing Juice
October 2010 Interne Passing Juice
September 2010 Interne Passing Juice
August 2010 Interne Passing Juice
July 2010 Interne Passing Juice
June 2010 Interne Passing Juice
May 2010 Interne Passing Juice
April 2010 Interne Passing Juice
March 2010 Interne Passing Juice
February 2010 Interne Passing Juice
January 2010 Interne Passing Juice
December 2009 Interne Passing Juice
November 2009 Interne Passing Juice
October 2009 Interne Passing Juice
September 2009 Interne Passing Juice
August 2009 Interne Passing Juice
July 2009 Interne Passing Juice
June 2009 Interne Passing Juice
May 2009 Interne Passing Juice
April 2009 Interne Passing Juice
March 2009 Interne Passing Juice
February 2009 Interne Passing Juice
January 2009 Interne Passing Juice
December 2008 Interne Passing Juice
November 2008 Interne Passing Juice
October 2008 Interne Passing Juice
September 2008 Interne Passing Juice
August 2008 Interne Passing Juice
July 2008 Interne Passing Juice
June 2008 Interne Passing Juice
May 2008 Interne Passing Juice
April 2008 Interne Passing Juice
March 2008 Interne Passing Juice
February 2008 Interne Passing Juice
January 2008 Interne Passing Juice
December 2007 Interne Passing Juice
November 2007 Interne Passing Juice
October 2007 Interne Passing Juice
September 2007 Interne Passing Juice
August 2007 Interne Passing Juice
July 2007 Interne Passing Juice
June 2007 Interne Passing Juice
May 2007 Interne Passing Juice
April 2007 Interne Passing Juice
March 2007 Interne Passing Juice
February 2007 Interne Passing Juice
January 2007 Interne Passing Juice
December 2006 Interne Passing Juice
Blog at WordPress.com. Externe noFollow
Cancel Interne Passing Juice

Mots-clefs

Nuage de mots-clefs precondition type using all int wrong because preconditions abstraction auto
Cohérence des mots-clefs
Mot-clef Contenu Titre Mots-clefs Description Niveaux de titre
int 32
wrong 29
type 29
using 24
preconditions 24

Ergonomie

Url Domaine : herbsutter.com
Longueur : 14
Favicon Génial, votre site web dispose d'un favicon.
Imprimabilité Génial. L'impression est optimisée grâce aux styles CSS.
Langue Bien. Votre langue est : en.
Dublin Core Cette page ne profite pas des métadonnées Dublin Core.

Document

Doctype HTML 5
Encodage Parfait. Votre charset est UTF-8.
Validité W3C Erreurs : 3
Avertissements : 48
E-mail confidentialité Génial, aucune adresse e-mail n'a été trouvé sous forme de texte!
HTML obsolètes Génial! Nous n'avons pas trouvé de balises HTML obsolètes dans votre code.
Astuces vitesse
Excellent, votre site n'utilise pas de tableaux imbriqués.
Mauvais, votre site web utilise des styles css inline.
Génial, votre site web contient peu de fichiers CSS.
Mauvais, votre site web contient trop de fichiers javascript (plus de 6).
Dommage, votre site n'est pas optimisé avec gzip.

Mobile

Optimisation mobile
Icône Apple
Méta tags viewport
Contenu FLASH

Optimisation

Sitemap XML Votre site web dispose d’une sitemap XML, ce qui est optimal.

http://herbsutter.com/sitemap.xml
https://herbsutter.com/sitemap.xml
https://herbsutter.com/news-sitemap.xml
Robots.txt http://herbsutter.com/robots.txt

Votre site dispose d’un fichier robots.txt, ce qui est optimal.
Mesures d'audience Manquant

Nous n'avons trouvé aucun outil d'analytics sur ce site.

Un outil de mesure d'audience vous permet d'analyser l’activité des visiteurs sur votre site. Vous devriez installer au moins un outil Analytics. Il est souvent utile d’en rajouter un second, afin de confirmer les résultats du premier.

PageSpeed Insights


Dispositif
Les catégories


Visi mobilieji | Darbo birža | Receptai | Vyriski ir moteriski batai | ETS 2 mods | Kur apsistoti Šiauliuose? | IT naujienos |