101 |
Java and Kotlin, a performance comparisonGakis, Stylianos, Everlönn, Niclas January 2020 (has links)
When it comes to developing software, it is important to keep in mind a variety of factors. It is paramount that software is fast, responsive, optimized, and able to be stored and used by the end consumer. This is especially true within fields such as medical care or critical systems where the speed is critical to the end-user and where the memory and storage capacity may all be a limiting factor to the software. This paper evaluates the differences in performance between the Java programming language and the Kotlin programming language. This paper evaluates this by comparing performance by experiment, comparing metrics between the two and relevant literature review about the subject. The results show an overall better performance of Java in most occasions, with Kotlin managing to perform better in much fewer benchmarks. These differences are mostly not very significant, however there are exceptions where Kotlin is performing considerably worse. That happens particularly when a lot of the Kotlin idiomatic features are implemented, which add a big overhead and if performance is a big concern, they should be used sparingly.
|
102 |
Model učenja programskog jezika PASCAL na daljinu / Model of distance learning programming language PascalPardanjac (Barbarić) Marjana 04 November 2010 (has links)
<p>Kreiran je model učenja programskog jezika PASCAL na daljinu, sa<br />smernicama za kvalitetniju realizaciju nastavnog procesa u primeni<br />računara. Primenjen je model Web baziranog sistema učenja na daljinu<br />DLearn, sa 9 modula (upravljenje korisnicima i dozvolama,<br />administrativni modul, modul za upravljanje korisničkim podacima, modul<br />za održavanje nastavnih materijala (CM – Curriculum Module), modul za<br />proveru znanja, modul za prijavu ispita, modul za slanje e – mail poruka,<br />modul za generisanje različitih izveštaja, modul za publikovanje po<br />SCORM standardu). Omogućena primena savremene tehnologije, čime se prati sadašnji naučno – tehnološko – informatički razvoj, opismenjavanje učenika za primenu savremene tehnologije, nastavnicima olakšan i pojednostavljen način<br />promene teorije i zadataka, i na taj način omogućeno jednostavnije i bolje<br />praćenje ubrzanog društvenog razvoja, proučavanje gradiva kada učenicima<br />odgovara, nema propuštene nastave, prelazak na novu temu tek nakon<br />savladavanja prethodne, način i stil rada primereni su svakom učeniku,<br />svako radi prema svojim sposobnostima i sklonostima, čime se povećava<br />stepen usvojenosti predviđenog nastavnog sadržaja.</p> / <p> Created a model of learning programming language PASCAL in the distance, with<br /> guidelines for better implementation of the teaching process in the implementation<br /> of the computer. Applied the model of Web-based distance learning system<br /> DLearn, with 9 modules (control users and permissions, administrative module,<br /> the module for managing user data, module for the maintenance of teaching<br /> material (CM – Curriculum Module), module test, examine the application<br /> module, the module for sending e - mail messages, the module to generate various<br /> reports, the module for publication by SCORM standard). Enabled the application<br /> of modern technology, which monitors the current science - technology -<br /> informatics development, literacy students for the application of modern<br /> technology, teachers relieved and simplified theory of how the changes and tasks,<br /> and thus allow easier and better tracking of accelerated social development,<br /> studies of the match when the students, no missed school, switch to the new theme only after overcoming the previous, manner and style of work are appropriate<br /> each student, each working according to their abilities and preferences, increasing<br /> the level of acquisition of the scheduled content.</p>
|
103 |
Návrh nástroje pro automatizované integrační testování / Design of Automated Integration Testing ToolOdrobinová, Lucia January 2021 (has links)
The diploma thesis focuses on the development of an automated integration testing tool for a company. The tool is employed to detect and report data changes that may have been caused by the modification of a database schema during the development of a software. This automation of recognizing data changes brings many advantages to the company. The tool has been developed using the C# programming language, which supports object-oriented programming, using the Microsoft Visual Studio Community 2019 software. Since the tool works with the Microsoft SQL Server database, Entity Framework, an object-relational mapping framework, has been used during the implementation of the tool.
|
104 |
E-learningové výukové moduly / E-learning study modulesKosík, Tomáš January 2010 (has links)
This master’s thesis is focused on description of e-learning by electronic form of teaching as a way of modern education. In theoretical part various forms, possibilities and basic structures of electronic education systems are described. It presents thorough analyses of positives and negatives of e-learning, both, from a technical perspective as well as from social point of view. In the second part of this thesis, the reader becomes familiar with e-learning system AI Tools used by UAMT FEEC VUT in Brno to support the teaching of basics of artificial intelligence. Furthermore, the work deals with the creation of three plug-in modules for this computer programme. These modules are programmed in C# and pursue matters of informed and uninformed state space search, and issues of forward and backward chaining used in expert systems. In conclusion, the results of theoretical and practical work are evaluated
|
105 |
Programovací prostředí s virtuálními roboty / Robot Programming Framework in Virtual EnvironmentMaťátko, Martin January 2014 (has links)
This diploma thesis deals with a theoretical analysis, a design and an implementation of a programming framework in a virtual environment. Robots use sensors to gain information about the environment and they subsequently modify this environment as a result of an instruction code. The instructions are entered in a graphic form using a visual programming language. The analysis and the outline of this language is discussed in detail in this work as well. The last part describes editing and rendering of the virtual world in which the robots are moving, considering sample tasks of following a line and movement inside a maze according to the rules of the Micromouse competition. The thesis includes solution proposals for both tasks regarding the possibilities of the programming environment. The result of the work is a concept of the aforementioned components and their implementation and linking to a functional unit.
|
106 |
Support à l'exécution pour objets actifs multi-threadés : conception et implémentation / Execution support for multi-threaded active objects : design and implementationRochas, Justine 22 September 2016 (has links)
Pour aborder le développement d'applications concurrentes et distribuées, le modèle de programmation à objets actifs procure une abstraction de haut niveau pour programmer de façon concurrente. Les objets actifs sont des entités indépendantes qui communiquent par messages asynchrones. Peu de systèmes à objets actifs considèrent actuellement une exécution multi-threadée. Cependant, introduire un parallélisme contrôlé permet d'éviter les coûts induits par des appels de méthodes distants. Dans cette thèse, nous nous intéressons aux enjeux que présentent les objets actifs multi-threadés, et à la coordination des threads pour exécuter de façon sûre les tâches d'un objet actif en parallèle. Nous enrichissons dans un premier temps le modèle de programmation, afin de contrôler l'ordonnancement interne des tâches. Puis nous exhibons son expressivité de deux façons différentes: d'abord en développant et en analysant les performances de plusieurs applications,puis en compilant un autre langage à objets actifs avec des primitives de synchronisation différentes dans notre modèle de programmation. Aussi, nous rendons nos objets actifs multi-threadés résilients dans un contexte distribué en utilisant les paradigmes de programmation que nous avons développé. Enfin, nous développons une application pair-à-pair qui met en scène des objets actifs multi-threadés. Globalement, nous concevons un cadre de développement et d'exécution complet pour les applications hautes performances distribuées. Nous renforçons notre modèle de programmation en formalisant nos contributions et les propriétés du modèle. Cela munit le programmeur de garanties fortes sur le comportement du modèle de programmation. / In order to tackle the development of concurrent and distributed applications, the active object programming model provides a high-level abstraction to program concurrent behaviours. Active objects are independent entities that communicate by mean of asynchronous messages. Very few of the existing active object frameworks consider a multi-threaded execution of active objects. Introducing a controlled parallelism enables removing some latency induced by remote method invocations. In this thesis, we take interest in the challenges of having multiple threads inside an active object, and in their safe coordination to execute tasks in parallel. We enhance this programming model by adding language constructs that control the internal scheduling of tasks. We then show its expressiveness in two ways: first with a classical approach, by developing and analysing the performance of several applications, and secondly, by compiling another active object language with different synchronisation primitives into our programming model. Also, we make multi-threaded active objects resilient in a distributed context through generic engineering constructs, and by using our programming abstractions. Finally, we develop a peer-to-peer application that shows multi-threaded active objects and their features in action. Overall, we design a thorough framework for the development and execution of high performance distributed applications. We reinforce our programming model by formalising our work and the model’s properties
|
107 |
Designing an Introductory Programming Language Based on Studies on NovicesJansson, Linnea January 2022 (has links)
The challenges of learning programming have been revealed in studies for decades. Many of the difficulties and misconceptions derive from, or go unassisted by, the syntax and semantics of the programming language used in introductory (CS1) courses. Despite the plethora of empirical data available, the designs of common general-purpose languages have arguably not been based on such data, possibly being one explanation to why novices continue to struggle. Through a literature review, this article first reviews what languages are commonly used in CS1 courses, studies on difficulties and misconceptions held by novices, and other factors that can be exploited in the design of more suitable introductory languages. Thereafter, a new text-based general-purpose programming language called Frendli is introduced, as well as the justifications for design decisions based on the findings presented. The language is intended for use in the beginning stages of introductory courses. The literature review revealed that novices often struggle with understanding fundamental concepts such as function parameters, return values, the need for variable declarations, and the order of execution. It also demonstrated that several syntactic and semantic design features of both C-style languages like Java and syntactically simpler ones like Python are problematic for novices. The author would argue that a language used for teaching programming should intuitively convey universal programming concepts through its syntax, minimize interference and ambiguity of syntax, and have syntactic and semantic consistency. Designing languages based on studies on novices can hopefully assist students in their learning and instructors in their teaching.
|
108 |
Holistic View on Alternative Programming languages for Radio Access Network Applications in Cloud and Embedded Deployments / En helhetsvy över alternativa programmeringsspråk för RadioAccess Network-applikationer i moln- och inbyggda systemKarlbäck, Rasmus, Orö, Anton January 2021 (has links)
With the emergence of cloud based solutions, companies such as Ericsson AB have started investigating different means of modernizing current implementations of software systems. With many new programming languages emerging such as Rust and Go, investigating the suitability of these languages compared to C++ can be seen as a part of this modernization process. There are many important aspects to consider when investigating the suitability of new programming languages, and this thesis makes an attempt at considering most of them. Therefore both performance which is a common metric as well as development efficiency which is a less common metric, were combined to provide a holistic view. Performance was defined as CPU usage, maximum memory usage, processing time per sequence and latency at runtime, which was measured on both x86 and ARM based hardware. Development efficiency was defined as the combination of the productivity metric, the maintainability index metric and the cognitive complexity metric. Combining these two metrics resulted in two general guidelines: if the application is constantly under change and performance is not critical, Go should be the language of choice. If instead performance is critical C++ should be the language of choice. Overall, when choosing a suitable programming language, one needs to weigh development efficiency against performance to make a decision.
|
109 |
Specializovaný interpret jazyka JavaScript / Specialized Interpreter of JavaScript LanguageBorůvka, Jan January 2008 (has links)
The aim of this master's thesis is to design and implement JavaScript interpreter which is designed for purposes of avoiding obfuscation code of various types of computer viruses. This master's thesis also comprises a detailed view into the inner mechanism of the ECMAScript standard.
|
110 |
A Language-Based Approach to Robust Context-Aware Software / 堅牢な文脈認識ソフトウェア開発のためのプログラミング言語の研究Inoue, Hiroaki 26 March 2018 (has links)
付記する学位プログラム名: デザイン学大学院連携プログラム / 京都大学 / 0048 / 新制・課程博士 / 博士(情報学) / 甲第21217号 / 情博第670号 / 新制||情||115(附属図書館) / 京都大学大学院情報学研究科通信情報システム専攻 / (主査)教授 五十嵐 淳, 教授 石田 亨, 教授 山本 章博 / 学位規則第4条第1項該当 / Doctor of Informatics / Kyoto University / DFAM
|
Page generated in 0.0844 seconds