Content deleted Content added
Citation bot (talk | contribs) Alter: title. Add: date, chapter, s2cid. Removed parameters. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox3 | #UCB_webform_linked 676/2306 |
Citation bot (talk | contribs) Added date. | Use this bot. Report bugs. | Suggested by Abductive | Category:Human–computer interaction | #UCB_Category 165/249 |
||
(3 intermediate revisions by 3 users not shown) | |||
Line 1:
'''Example-centric programming''' is an approach to [[software development]] that helps the user to create software by locating and modifying small examples into a larger whole. That approach can be helped by tools that allow an [[integrated development environment]] (IDE) to show code examples or [[API]] documentation related to coding behaviors occurring in the IDE. “Borrow” tactics are often employed from online sources, by programmers leaving the IDE to troubleshoot.<ref name="blueprint">{{cite book|last1=Scaffidi|first1=Christopher|last2=Brandt|first2=Joel|last3=Burnett|first3=Margaret|author3-link=Margaret Burnett|last4=Dove|first4=Andrew|last5=Myers|first5=Brad|title
The purpose of example-centric programming is to reduce the time spent by developers searching online. Ideally, in example-centric programming, the [[user interface]] integrates with help module examples for assistance without programmers leaving the IDE. The idea for this type of “instant documentation” is to reduce programming interruptions.<ref name="redprint">{{cite book|last1=Bhardwaj|first1=Anant|last2=Luciano|first2=Date|last3=Klemmer|first3=Scott|title=Proceedings of the 24th annual ACM symposium adjunct on User interface software and technology |chapter=Redprint |date=2011|pages=21–22|doi=10.1145/2046396.2046408|isbn=9781450310147|s2cid=23031454 }}</ref> The usage of this feature is not limited to experts, as some novices reap the benefits of an integrated knowledge base, without resorting to frequent web searches or browsing.<ref name="blueprint" />
Line 25:
Emergence can be defined as a process whereby larger entities, patterns, and regularities arise through interactions among smaller or simpler entities that themselves do not exhibit such properties. The extensive amount of code publicly available on the web can be used to find this type of patterns and regularities. By modeling how developers use programming languages in practices, algorithms for finding common idioms and detecting unlikely code can be created.<ref name="codex" />
This process is limited to the amount of code that programmers are willing and able to share. Because people write more code than they share online there is a lot of duplicated effort. To fully use the power of the crowd, the effort required to publish code online should be reduced.<ref name=ditty>{{cite book|last1=Lieber|first1=Thomas|last2=Miller|first2=Rob|title=Adjunct proceedings of the 25th annual ACM symposium on User interface software and technology |chapter=Programming with everybody
==Examples==
Line 46:
A codelet is a block of example code an interactive helper widget that assists the user in understanding and integrating the example.
;Bing Code Search <ref>{{cite web|last1=Shiban|first1=Ala|title=Introducing Bing Code Search for C#|url=http://blogs.msdn.com/b/visualstudio/archive/2014/02/17/introducing-bing-code-search-for-c.aspx|website=blogs.msdn.com|date=17 February 2014 |accessdate=8 December 2014}}</ref>
Bing Code Search is an extension to [[Microsoft Visual Studio]] developed by a team made of people from Visual Studio, Bing and Microsoft Research that allows developers to search code examples and documentation from [[Bing (search engine)|Bing]] directly from [[IntelliSense]].
Line 56:
;UpCodeIn
UpCodeIn is a source code
UpCodeIn understand syntax of many programming languages like Java, JavaScript, Python and C#.
|