{"title":"设计模式驱动嵌入式应用程序的开发","authors":"K. Holman, Zoltán Szabó","doi":"10.1109/SAMI.2015.7061896","DOIUrl":null,"url":null,"abstract":"Application of microprocessors became common in various fields due to their progressive capabilities and decreasing price, enabling even simple sensors to easily deal with software-heavy tasks. These tendencies resulted in an explosive growth in the embedded market, challenging engineers to build reliable, high performance and cheap microcontroller-based software systems as fast as possible. Such requirements revalue the importance of reusable software components in the world of embedded applications to improve agility and responsiveness to customer needs. Design patterns provide ready-to-use solutions for common problems in the software development process. We are able to describe almost every aspect of a system using nothing but patterns. The rich toolkit of patterns gets overlooked as much as useful as they are. However, they lose expressiveness without available object-oriented features like the C language; the most commonly used one in embedded systems. The goal of this paper is to revisit some well-known design patterns and their applications using the C language. A common mistake when implementing patterns using C is trying to emulate object-oriented concepts for example class, inheritance, etc. - resulting in almost unreadable and hard to understand source code -, instead of thinking with a different mindset and focusing on the intention and purpose of the pattern.","PeriodicalId":276598,"journal":{"name":"2015 IEEE 13th International Symposium on Applied Machine Intelligence and Informatics (SAMI)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-03-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Design pattern driven development of embedded applications\",\"authors\":\"K. Holman, Zoltán Szabó\",\"doi\":\"10.1109/SAMI.2015.7061896\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Application of microprocessors became common in various fields due to their progressive capabilities and decreasing price, enabling even simple sensors to easily deal with software-heavy tasks. These tendencies resulted in an explosive growth in the embedded market, challenging engineers to build reliable, high performance and cheap microcontroller-based software systems as fast as possible. Such requirements revalue the importance of reusable software components in the world of embedded applications to improve agility and responsiveness to customer needs. Design patterns provide ready-to-use solutions for common problems in the software development process. We are able to describe almost every aspect of a system using nothing but patterns. The rich toolkit of patterns gets overlooked as much as useful as they are. However, they lose expressiveness without available object-oriented features like the C language; the most commonly used one in embedded systems. The goal of this paper is to revisit some well-known design patterns and their applications using the C language. A common mistake when implementing patterns using C is trying to emulate object-oriented concepts for example class, inheritance, etc. - resulting in almost unreadable and hard to understand source code -, instead of thinking with a different mindset and focusing on the intention and purpose of the pattern.\",\"PeriodicalId\":276598,\"journal\":{\"name\":\"2015 IEEE 13th International Symposium on Applied Machine Intelligence and Informatics (SAMI)\",\"volume\":\"1 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2015-03-19\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2015 IEEE 13th International Symposium on Applied Machine Intelligence and Informatics (SAMI)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/SAMI.2015.7061896\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 IEEE 13th International Symposium on Applied Machine Intelligence and Informatics (SAMI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SAMI.2015.7061896","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Design pattern driven development of embedded applications
Application of microprocessors became common in various fields due to their progressive capabilities and decreasing price, enabling even simple sensors to easily deal with software-heavy tasks. These tendencies resulted in an explosive growth in the embedded market, challenging engineers to build reliable, high performance and cheap microcontroller-based software systems as fast as possible. Such requirements revalue the importance of reusable software components in the world of embedded applications to improve agility and responsiveness to customer needs. Design patterns provide ready-to-use solutions for common problems in the software development process. We are able to describe almost every aspect of a system using nothing but patterns. The rich toolkit of patterns gets overlooked as much as useful as they are. However, they lose expressiveness without available object-oriented features like the C language; the most commonly used one in embedded systems. The goal of this paper is to revisit some well-known design patterns and their applications using the C language. A common mistake when implementing patterns using C is trying to emulate object-oriented concepts for example class, inheritance, etc. - resulting in almost unreadable and hard to understand source code -, instead of thinking with a different mindset and focusing on the intention and purpose of the pattern.