{"id":550,"date":"2011-06-10T01:43:32","date_gmt":"2011-06-10T09:43:32","guid":{"rendered":"http:\/\/www.andreanolanusse.com\/en\/?p=550"},"modified":"2011-10-26T09:58:46","modified_gmt":"2011-10-26T17:58:46","slug":"delphi-developer-certification-tips-1","status":"publish","type":"post","link":"http:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/","title":{"rendered":"Delphi Developer Certification Tips #1"},"content":{"rendered":"<p>Just 3 days after we released the new <a title=\"Certification Center\" href=\"http:\/\/www.embarcadero.com\/certification\" target=\"_blank\">Delphi Certification Program<\/a>, many Delphi developers around the world already became Certified Delphi Developer.<\/p>\n<p>In order to encourage others, I decided to start writing tips for the Delphi Certification Program, which will help you during your preparation for the exam. The Delphi Developer Certification Study Guide is the official guide and provide all of the information you need to be ready for the exam. My tips are a\u00a0complementary\u00a0material and\u00a0doesn&#8217;t replace the Study Guides.<\/p>\n<p>I won&#8217;t be posting questions and\/or answers related with the exam. My goal here is to help you to be ready for the exam, learn more about Delphi, be a better developer, improve your skills\u00a0and chances to become Delphi Developer Certified.<\/p>\n<p>To start, let&#8217;s learn about System.RawByteString type and improve our\u00a0knowledge\u00a0on Unicode support, the exam may ask you directly or indirectly about this matter.<\/p>\n<h3>System.RawByteString type<\/h3>\n<p>RawByteString is one of the new String types introduced in\u00a0Delphi 2009 because of the Unicode support. RawByteString is an AnsiString with no code page set by default.\u00a0Each string in Delphi is associated with a code page. The runtime library uses this information to safely convert and manipulate international character sets. RawByteString can be used\u00a0as a variable type to store some BLOB data and should be use as a code page agnostic parameter to a method or function.<\/p>\n<p>The RAD Studio documentation describes\u00a0<a title=\"System.RawByteString description\" href=\"http:\/\/docwiki.embarcadero.com\/VCL\/en\/System.RawByteString\" target=\"_blank\">RawByteString<\/a> as:<\/p>\n<blockquote><p>Enables the passing of string data of any code page without doing any codepage conversions.<\/p>\n<p><strong>RawByteString<\/strong> enables the passing of string data of any code page without doing any codepage conversions. The purpose of RawByteString is to reduce the need for multiple overloads of procedures that read string data. This means that parameters of routines that process strings without regard for the string&#8217;s code page should typically be of type\u00a0<strong>RawByteString<\/strong>.<\/p>\n<p>RawByteString should only be used as a parameter type, and only in routines which otherwise would need multiple overloads for AnsiStrings with different codepages. Such routines need to be written with care for the actual codepage of the string at run time.<\/p>\n<p>In general, it is recommended that string processing routines should simply use &#8220;string&#8221; as the string type. Declaring variables or fields of type\u00a0<strong>RawByteString<\/strong> should rarely, if ever, be done, because this practice can lead to undefined behavior and potential data loss.<\/p><\/blockquote>\n<p>Below three links I recommend you read:<\/p>\n<ul>\n<li><a href=\"http:\/\/www.embarcadero.com\/images\/dm\/technical-papers\/delphi-unicode-migration.pdf\" target=\"_blank\">Delphi Unicode Migration for Mere\u00a0Mortals: Stories and Advice from the\u00a0Front Lines<\/a><\/li>\n<li><a href=\"http:\/\/www.micro-isv.asia\/2008\/08\/using-rawbytestring-effectively\/\" target=\"_blank\">Using RawByteString Effectively<\/a><\/li>\n<li><a href=\"http:\/\/docwiki.embarcadero.com\/RADStudio\/en\/String_Types\" target=\"_blank\">RAD Studio Documentation &#8211; String Types (Delphi) &#8211; already mentioned on the Study Guide<\/a><\/li>\n<\/ul>\n<p>Reading this information you will be able to answer questions related with RawByteString and Unicode, and the most important learn more about Delphi.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Just 3 days after we released the new Delphi Certification Program, many Delphi developers around the world already became Certified Delphi Developer. In order to encourage others, I decided to start writing tips for the Delphi Certification Program, which will help you during your preparation for the exam. The Delphi Developer Certification Study Guide is [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":553,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_s2mail":"","footnotes":""},"categories":[10],"tags":[70,90],"class_list":["post-550","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-delphi","tag-certification","tag-delphi"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Delphi Developer Certification Tips #1 | Andreano Lanusse | Technology and Software Development<\/title>\n<meta name=\"description\" content=\"Just 3 days after we released the new Delphi Certification Program, many Delphi developers around the world already became Certified Delphi Developer. In\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Delphi Developer Certification Tips #1 | Andreano Lanusse | Technology and Software Development\" \/>\n<meta property=\"og:description\" content=\"Just 3 days after we released the new Delphi Certification Program, many Delphi developers around the world already became Certified Delphi Developer. In\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/\" \/>\n<meta property=\"og:site_name\" content=\"Andreano Lanusse | Technology and Software Development\" \/>\n<meta property=\"article:published_time\" content=\"2011-06-10T09:43:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2011-10-26T17:58:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"440\" \/>\n\t<meta property=\"og:image:height\" content=\"250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andreano Lanusse\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andreano Lanusse\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/\"},\"author\":{\"name\":\"Andreano Lanusse\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\"},\"headline\":\"Delphi Developer Certification Tips #1\",\"datePublished\":\"2011-06-10T09:43:32+00:00\",\"dateModified\":\"2011-10-26T17:58:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/\"},\"wordCount\":464,\"commentCount\":5,\"publisher\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\"},\"image\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png\",\"keywords\":[\"Certification\",\"Delphi\"],\"articleSection\":[\"Delphi\"],\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/\",\"url\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/\",\"name\":\"Delphi Developer Certification Tips #1 | Andreano Lanusse | Technology and Software Development\",\"isPartOf\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png\",\"datePublished\":\"2011-06-10T09:43:32+00:00\",\"dateModified\":\"2011-10-26T17:58:46+00:00\",\"description\":\"Just 3 days after we released the new Delphi Certification Program, many Delphi developers around the world already became Certified Delphi Developer. In\",\"breadcrumb\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#breadcrumb\"},\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage\",\"url\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png\",\"contentUrl\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png\",\"width\":440,\"height\":250},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.andreanolanusse.com\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Delphi Developer Certification Tips #1\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#website\",\"url\":\"https:\/\/www.andreanolanusse.com\/en\/\",\"name\":\"Andreano Lanusse | Technology and Software Development\",\"description\":\"Where Andreano Lanusse talk about technology, software development, programming techniques, databases, games and more through articles, tutorials and videos\",\"publisher\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.andreanolanusse.com\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\",\"name\":\"Andreano Lanusse\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g\",\"caption\":\"Andreano Lanusse\"},\"logo\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/\"},\"description\":\"Andreano Lanusse is an expert and enthusiastic on software development industry, at Embarcadero he is focused on helping to make sure the products being developed meet the expectations of Embarcadero's customers, as well as defining market strategies for Latin America. Today as Latin Lead Evangelist he spends great deal of time in developer conferences, tradeshows, user group, and visiting customers throughout Latin America. Before Embarcadero, he worked 13 years for Borland, Andreano has worked as Support Coordinator, Engineer, Product Manager, including Product Line Sales Manager, where was responsible to manage the relationship with Brazil developer community, also has worked as Principal Consultant for Borland Consulting Services on the development and management of critical applications. He previously served as Chief Architect for USS Solu\u00e7\u00f5es Gerenciadas (now USS Tempo). Andreano holds a bachelor's degree in Business Administration Marketing Emphasis from Sumare Institute, MBA in Project Management from FGV, certification in Microsoft products, all Borland ALM products, and all CodeGear product line.\",\"sameAs\":[\"http:\/\/www.andreanolanusse.com\",\"https:\/\/x.com\/andreanolanusse\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Delphi Developer Certification Tips #1 | Andreano Lanusse | Technology and Software Development","description":"Just 3 days after we released the new Delphi Certification Program, many Delphi developers around the world already became Certified Delphi Developer. In","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/","og_locale":"en_US","og_type":"article","og_title":"Delphi Developer Certification Tips #1 | Andreano Lanusse | Technology and Software Development","og_description":"Just 3 days after we released the new Delphi Certification Program, many Delphi developers around the world already became Certified Delphi Developer. In","og_url":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/","og_site_name":"Andreano Lanusse | Technology and Software Development","article_published_time":"2011-06-10T09:43:32+00:00","article_modified_time":"2011-10-26T17:58:46+00:00","og_image":[{"width":440,"height":250,"url":"https:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png","type":"image\/png"}],"author":"Andreano Lanusse","twitter_misc":{"Written by":"Andreano Lanusse","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#article","isPartOf":{"@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/"},"author":{"name":"Andreano Lanusse","@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b"},"headline":"Delphi Developer Certification Tips #1","datePublished":"2011-06-10T09:43:32+00:00","dateModified":"2011-10-26T17:58:46+00:00","mainEntityOfPage":{"@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/"},"wordCount":464,"commentCount":5,"publisher":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b"},"image":{"@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage"},"thumbnailUrl":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png","keywords":["Certification","Delphi"],"articleSection":["Delphi"],"inLanguage":"en","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/","url":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/","name":"Delphi Developer Certification Tips #1 | Andreano Lanusse | Technology and Software Development","isPartOf":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage"},"image":{"@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage"},"thumbnailUrl":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png","datePublished":"2011-06-10T09:43:32+00:00","dateModified":"2011-10-26T17:58:46+00:00","description":"Just 3 days after we released the new Delphi Certification Program, many Delphi developers around the world already became Certified Delphi Developer. In","breadcrumb":{"@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#breadcrumb"},"inLanguage":"en","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/"]}]},{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#primaryimage","url":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png","contentUrl":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/06\/Delphi_Certified_Developer_Logo2.png","width":440,"height":250},{"@type":"BreadcrumbList","@id":"https:\/\/www.andreanolanusse.com\/en\/delphi-developer-certification-tips-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.andreanolanusse.com\/en\/"},{"@type":"ListItem","position":2,"name":"Delphi Developer Certification Tips #1"}]},{"@type":"WebSite","@id":"https:\/\/www.andreanolanusse.com\/en\/#website","url":"https:\/\/www.andreanolanusse.com\/en\/","name":"Andreano Lanusse | Technology and Software Development","description":"Where Andreano Lanusse talk about technology, software development, programming techniques, databases, games and more through articles, tutorials and videos","publisher":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.andreanolanusse.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en"},{"@type":["Person","Organization"],"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b","name":"Andreano Lanusse","image":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g","caption":"Andreano Lanusse"},"logo":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/"},"description":"Andreano Lanusse is an expert and enthusiastic on software development industry, at Embarcadero he is focused on helping to make sure the products being developed meet the expectations of Embarcadero's customers, as well as defining market strategies for Latin America. Today as Latin Lead Evangelist he spends great deal of time in developer conferences, tradeshows, user group, and visiting customers throughout Latin America. Before Embarcadero, he worked 13 years for Borland, Andreano has worked as Support Coordinator, Engineer, Product Manager, including Product Line Sales Manager, where was responsible to manage the relationship with Brazil developer community, also has worked as Principal Consultant for Borland Consulting Services on the development and management of critical applications. He previously served as Chief Architect for USS Solu\u00e7\u00f5es Gerenciadas (now USS Tempo). Andreano holds a bachelor's degree in Business Administration Marketing Emphasis from Sumare Institute, MBA in Project Management from FGV, certification in Microsoft products, all Borland ALM products, and all CodeGear product line.","sameAs":["http:\/\/www.andreanolanusse.com","https:\/\/x.com\/andreanolanusse"]}]}},"_links":{"self":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/posts\/550","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/comments?post=550"}],"version-history":[{"count":0,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/posts\/550\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/media\/553"}],"wp:attachment":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/media?parent=550"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/categories?post=550"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/tags?post=550"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}