To see the other types of publications on this topic, follow the link: Java.

Dissertations / Theses on the topic 'Java'

Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles

Select a source type:

Consult the top 50 dissertations / theses for your research on the topic 'Java.'

Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.

You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.

Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.

1

Francisco, Pedro Filipe do Amaral Goucha. "Contract-Java - design by contract in Java - Contract-Java." Master's thesis, Universidade de Aveiro, 2012. http://hdl.handle.net/10773/11035.

Full text
Abstract:
Mestrado em Engenharia de Computadores e Telemática
A programação por contrato é uma metodologia de programação que implementa mecanismos de correcção de forma bem adaptada à programação orientada por objectos, facilitando a construção de software correto e robusto, permitindo também a sua documentação e especificação e a construção de programas tolerantes a falhas. No entanto, ao contrário da programação orientada por objectos, a programação por contrato tem uma difusão bastante reduzida. Uma das razões para tal facto é a quase completa ausência de suporte para a metodologia na grande maioria das linguagens de programação usadas actualmente, nas quais se inclui a linguagem Java. Apesar de existirem algumas ferramentas para tentar suprir essa omissão da linguagem Java, são aproximações incompletas que não permitem usufruir de todas as vantagens e capacidades da programação por contrato. Neste trabalho pretende-se definir quais as características necessárias numa linguagem de modo a permitir a implementação completa da metodologia, avaliando as falhas que as ferramentas existentes possuem e, de seguida, definir e construir uma nova linguagem, “Contract-Java”, definida como uma extensão da linguagem Java, que permita usar a programação por contrato na sua totalidade.
Design by Contract is a programming methodology which implements correction mechanisms well adapted to object-oriented programming, easing the construction of correct and robust software, as well as allowing its documentation and specification and the construction of fault-tolerance programs. However, unlike object-oriented programming, Design by Contract has a very low distribution. One of the reasons for such is the lack of support for it on most programming languages currently in use, in which Java is included. Although a few tools attempt to workaround such lack of support, they all present incomplete approaches which do not support all the advantages and capabilities of Design by Contract. In this work, we intend to define which characteristics are necessary in order to fully implement the methodology, evaluating the faults of existing tools and, afterwards, defining and constructing a new language, “Contract-Java”, defined as an extension of the Java language, which allows to use Design by Contract in its entirety.
APA, Harvard, Vancouver, ISO, and other styles
2

Drejhammar, Frej. "Flow Java : declarative concurrency for Java." Licentiate thesis, KTH, Microelectronics and Information Technology, IMIT, 2004. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-287.

Full text
Abstract:

This thesis presents the design, implementation, and evaluation of Flow Java, a programming language for the implementation of concurrent programs. Flow Java adds powerful programming abstractions for automatic synchronization of concurrent programs to Java. The abstractions added are single assignment variables (logic variables) and futures (read-only views of logic variables).

The added abstractions conservatively extend Java with respect to types, parameter passing, and concurrency. Futures support secure concurrent abstractions and are essential for seamless integration of single assignment variables into Java. These abstractions allow for simple and concise implementation of high-level concurrent programming abstractions.

Flow Java is implemented as a moderate extension to the GNU GCJ/libjava Java compiler and runtime environment. The extension is not speci c to a particular implementation, it could easily be incorporated into other Java implementations.

The thesis presents three implementation strategies for single assignment variables. One strategy uses forwarding and dereferencing while the two others are variants of Taylor's scheme. Taylor's scheme represents logic variables as a circular list. The thesis presents a new adaptation of Taylor's scheme to a concurrent language using operating system threads.

The Flow Java system is evaluated using standard Java benchmarks. Evaluation shows that in most cases the overhead incurred by the extensions is between 10% and 50%. For some pathological cases the runtime increases by up to 150%. Concurrent programs making use of Flow Java's automatic synchronization, generally perform as good as corresponding Java programs. In some cases Flow Java programs outperform Java programs by as much as 33%.

APA, Harvard, Vancouver, ISO, and other styles
3

Drejhammar, Frej. "Flow Java : declarative concurrency for Java /." Licentiate thesis, Stockholm : Department of Microelectronics and Information Technology, Royal Institute of Technology, 2005. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-287.

Full text
APA, Harvard, Vancouver, ISO, and other styles
4

Bwogi, Andrew, and Tuncay Dagdelen. "Configuring Java Pathfinder for concurrent Java programs." Thesis, KTH, Skolan för datavetenskap och kommunikation (CSC), 2017. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-208369.

Full text
Abstract:
Software verification is a field of computer science dedicated to guar- antee that a program runs according to a formalized specification. Of various kinds of verification techniques model checking tries all possi- ble states of a program and makes sure each state satisfies a set of for- malized properties. Java Pathfinder (JPF) is a tool that automatically model checks Java bytecode. This report studies general configuration patterns for JPF that leads it to either terminate without errors or ter- minate with found concurrency bugs for different types of programs. The types considered are solutions to producer-consumer problems, barber shop problems, reader-writer problems and programs falling under the type server-client systems. The main part of the method is first a search for these types of programs using cloud-based revision control systems. Second, these programs are verified with the help of the JPF documentation, articles on the subject and online discus- sion groups. The results are configurations that lead to no errors, con- currency bugs and native method errors depending on the program verified. An important limitation of the report is the absence of large programs that challenge JPF’s state space handling. The resulting gen- eral configuration patterns found are applicable to small programs not using native methods. A pattern is also found for programs with na- tive methods, but here it is possible that the user must modify a model class in JPF.
Programverifikation är ett datalogiskt fält som säkerställer att pro- gram fungerar enligt en formaliserad specifikation. Modellkontroll är ett delområde i programverifikation som testar alla möjliga tillstånd i ett program för att se om de uppfyller en mängd formaliserade egen- skaper. Java Pathfinder (JPF) är ett verktyg som automatiskt kontrolle- rar bytekod i Java. Syftet med den här rapporten är att undersöka vil- ka generella konfigurationsmönster som finns för särskilda program- typer som leder till att JPF antingen terminerar utan fel eller med ett funnet samverkningsfel. Programtyperna som undersöks är lösningar till producer/consumer-problem, barber shop-problem, reader/wri- ter-problem och program som faller under typen server/klient-pro- gram. Metoden består i huvudsak först av sökning efter program i molnbaserade versionshanteringssystem. Sedan följer programkontroll med hjälp av JPF-dokumentation, artiklar om ämnet och diskussions- grupper online. Resultatet är ett antal konfigurationer som leder till inga fel, fel på grund av samtidig trådkörning och fel på grund av di- rekt körbar kod, beroende på det verifierade programmet. En viktig begränsning med rapporten är frånvaron av stora program som tes- tar JPFs hantering av stora tillståndsrymder. De funna generella kon- figurationerna är tillämpbara på små program som inte använder di- rekt körbar kod. En generell konfiguration hittades även för program som använder direkt körbar kod, men här måste användaren eventu- ellt skriva om en modellklass i JPF.
APA, Harvard, Vancouver, ISO, and other styles
5

Doyon, Stéphane. "On the security of Java, the Java bytecode verifier." Thesis, National Library of Canada = Bibliothèque nationale du Canada, 1999. http://www.collectionscanada.ca/obj/s4/f2/dsk1/tape7/PQDD_0004/MQ41890.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
6

Romio, Giovanni. "Backport di una applicazione da Java 8 a Java 7." Bachelor's thesis, Alma Mater Studiorum - Università di Bologna, 2016. http://amslaurea.unibo.it/10481/.

Full text
Abstract:
In Java 8, ultimo aggiornamento ufficiale del linguaggio Java, sono state introdotte alcune nuove funzionalità che permettono l’integrazione di alcuni meccanismi legati ai linguaggi dinamici o funzionali, come le espressioni lambda, l’utilizzo degli stream e la dichiarazione di metodi statici all’interno di interfacce. Se si volesse installare un’applicazione scritta in Java 8 su Android, Dalvik VM, la JVM in esso presente, fallirà il processo di traduzione del bytecode. In questa tesi quindi esplorerò, sia ad alto livello che a basso livello, l’origine del problema e presenterò una soluzione di backporting per un’applicazione esistente.
APA, Harvard, Vancouver, ISO, and other styles
7

Kwon, Jagun. "Ravenscar-Java: Java Technology for High-Integrity Real-Time Systems." Thesis, University of York, 2006. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.485101.

Full text
APA, Harvard, Vancouver, ISO, and other styles
8

Anders, Jörg. "Java MPEG1-Player." Universitätsbibliothek Chemnitz, 2003. http://nbn-resolving.de/urn:nbn:de:swb:ch1-200300738.

Full text
APA, Harvard, Vancouver, ISO, and other styles
9

Batchelder, Michael Robert. "Java bytecode obfuscation." Thesis, McGill University, 2007. http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=18300.

Full text
Abstract:
Programs written for machine execution will always be susceptible to information theft. This information can include trademarked algorithms, data embedded in the program, or even data the program accesses. As technology advances computer scientists are building more and more powerful tools for reverse-engineering such as decompilers.The Java programming language is particularly open to reverse-engineering attacks because of its well-defined, open, and portable binary format. We examine one area of better-securing the intellectual property of a Java program; obfuscation. Obfuscation of a program involves transforming the code of the program into a more complex, but semantically equivalent representation. This can include the addition of confusing control flow, the removal of certain information embedded in the program which is not explicitly required for execution, or the cloaking of data.Obfuscation is one of the only techniques available other than cryptological options. While many approaches to obfuscation are ultimately reversible, it nevertheless seriously hinders those attempting to steal information by increasing the computing time and power required by software to reverse-engineer the program and also severely increases the complexity of any source code that is recovered by the reverse-engineering.In this thesis we present a number of obfuscating transformations implemented within a new automatic tool we name the Java Bytecode Obfuscator (JBCO). We present empirical measures of the performance costs of these transformations in terms of execution speed and program size. Complexity measurements that gauge the effectiveness of the obfuscations are also given. Finally, we review the feasibility of each transformation by looking at source code generated from obfuscated bytecode by various decompilers.
Les programmes écrits pour l'exécution d'ordinateur seront toujours susceptibles au vol d'information. Cette information peut inclure des algorithmes de marque de commerce, des données incluses dans le programme, ou même des données concernant les accès de programme. Suivant les avancées technologiques, les informaticiens construisent des outils de plus en plus puissants pour l'ingénierie inverse telle que le décompilateur. Le langage de programmation de Java est particulièrement ouvert aux attaques de l'ingénierie inverse en raison de son format binaire bien défini, ouvert, et portatif. Nous recherches portent sur un domaine permettant de mieux sécuriser fixer la propriété intellectuelle des programmes en Java; obscurcissement. L'obscurcissement d'un programme implique de transformer le code du programme en une représentation plus complexe mais sémantiquement équivalente. Ceci peut inclure l'addition de l'écoulement embrouillant de commande, de la supression de certaines informations incluses dans les programmes dont l'exécution n'est pas spécifiquement exigée, ou de la dissimulation des données. Excepté les techniques cryptologique s, l'obscurcissement est l'une des seules techniques disponibles. Même si beaucoup de stratégies de l'obscurissment sont finalement réversibles, il gêne sérieusement ceux qui essayent de voler l'information en augmentant la durée de calcul et la puissance exigées par les logicels d'ingénierie inverse et augmente considérablement la complexité de n'importe quel code source récupere par cette technique. Dans cette thèse nous présentons un certain nombre de transformations d'obscurcissement mises en application dans un outil automatique que nous appelons le Java Bytecode Obfuscator (JBCO). Nous présentons des mesures empiriques des coûts d'exécution de ces transformations en termes de vitesse d'exécution et taille de programme. Des mesures de complexité qui mesurent l'efficacité des obscurc
APA, Harvard, Vancouver, ISO, and other styles
10

Bezděk, Pavel. "Gramatická evoluce – Java." Master's thesis, Vysoké učení technické v Brně. Fakulta strojního inženýrství, 2009. http://www.nusl.cz/ntk/nusl-228412.

Full text
Abstract:
The object of my thesis is the realization of grammatical evolution in the Java programming language for solving problems of approximation of functions and synthesis of logical circuits. The application is practical used for testing and gathering data in context of using different purpose function and parallel grammatical evolution. The data are analyzed and evaluated.
APA, Harvard, Vancouver, ISO, and other styles
11

Fuhrmann, Klaus. "Formen der javanischen Pilgerschaft zu Heiligenschreinen." [S.l. : s.n.], 2000. http://deposit.ddb.de/cgi-bin/dokserv?idn=963866273.

Full text
APA, Harvard, Vancouver, ISO, and other styles
12

Shabani, Shahpar. "Pure Java interface to a DSMS : Pure Java interface to a DSMS." Thesis, Uppsala universitet, Institutionen för informationsteknologi, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-423975.

Full text
Abstract:
SCSQ (Scalable Stream Query processor) is a data stream management system (DSMS) that allows different kinds of distributed high-volume infinite streams to be queried. The current Java interface to SCSQ usesC libraries to communicate between Java and a SCSQ server. Therefore, a pure Java client-server interface to SCSQ is needed. Unlike regular databases, DSMS can process queries over infinite streams. Such continuous queries (CQs) are running until they are explicitlyterminated. The interface must be able to process infinite scans of continuous query results. This master thesis implements a pure Java client-server interface to SCSQ which can handle CQs.
APA, Harvard, Vancouver, ISO, and other styles
13

Garingo, Gary D. "JAVA based data connectivity." Monterey, Calif. : Springfield, Va. : Naval Postgraduate School ; Available from National Technical Information Service, 1997. http://handle.dtic.mil/100.2/ADA342181.

Full text
Abstract:
Thesis (M.S. in Software Engineering) Naval Postgraduate School, September 1997.
"September 1997." Thesis advisor(s): LuQi, V. Berzins. Includes bibliographical references (p. 63). Also available online.
APA, Harvard, Vancouver, ISO, and other styles
14

Long, Bradley. "Testing concurrent Java components /." [St. Lucia, Qld.], 2005. http://www.library.uq.edu.au/pdfserve.php?image=thesisabs/absthe18735.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
15

Manson, Jeremy. "The Java memory model." College Park, Md. : University of Maryland, 2004. http://hdl.handle.net/1903/1949.

Full text
Abstract:
Thesis (Ph. D.) -- University of Maryland, College Park, 2004.
Thesis research directed by: Computer Science. Title from t.p. of PDF. Includes bibliographical references. Published by UMI Dissertation Services, Ann Arbor, Mich. Also available in paper.
APA, Harvard, Vancouver, ISO, and other styles
16

Klein, Gerwin. "Verified Java bytecode verification." [S.l. : s.n.], 2003. http://deposit.ddb.de/cgi-bin/dokserv?idn=967128749.

Full text
APA, Harvard, Vancouver, ISO, and other styles
17

Gatzka, Stephan. "Java in eingebetteten Systemen." Doctoral thesis, Saechsische Landesbibliothek- Staats- und Universitaetsbibliothek Dresden, 2009. http://nbn-resolving.de/urn:nbn:de:bsz:14-qucosa-20616.

Full text
Abstract:
Moderne, objektorientierte Sprachen spielen bei der Entwicklung von Software für eingebettete Systeme bislang kaum eine Rolle. Die Gründe hierfür sind vielfältig, meist wird jedoch die mangelnde Effizienz und der größere Speicherbedarf hervorgehoben. Obwohl Java viele Eigenschaften hat, die sehr für einen Einsatz in eingebetteten Systemen sprechen, so hängt doch gerade Java vielfach immer noch das Vorurteil an, in Systemen mit beschränkter Rechenleistung und Speicher zu viele Ressourcen zu benötigen. Diese Arbeit soll dazu beitragen, diese Vorurteile abzutragen. Sie stellt insbesondere Techniken vor, die den Speicherbedarf einer JVM so gering wie möglich halten und diese effizient mit der zur Verfügung stehenden Rechenleistung umgehen lassen. Viele der dargestellten Verfahren und Algorithmen wurden in der Kertasarie VM implementiert, einer virtuellen Maschine, die speziell für den Einsatz in eingebetteten Systemen konzipiert wurde. Durch die weit verbreitete Vernetzung eingebetteter Systeme über das Internet stellt sich in vielen Fällen zudem das Problem einer modernen, abstrakten und effizienten Form der Kommunikation. Aus diesem Grund liegt der zweite Schwerpunkt dieser Arbeit auf dem Vergleich von objektorientierten Middleware-Architekturen, insbesondere von Java-RMI. Auch auf diesem Gebiet wird eine eigene, speziell an eingebettete Systeme angepasste RMI-Variante vorgestellt
Modern, object oriented languages do not play an important role when developing software for embedded systems. There are many reasons for it, most often an inadequate performance and a greater memory demand are mentioned. In spite of the fact that Java has many features suitable for embedded systems, Java often faces the prejudice to consume too much resources in systems with limited processing power and memory. This work is a contribution to diminish this prejudices. It presents techniques to limit the memory demands of a Java Virtual Machine and to effectively cope with limited computing power. Many of the presented methods and algorithms are implemented in the Kertasarie VM, a JVM designed to run in embedded systems.Due to the fact of increasing network capabilities embedded systems often face the problem of a modern, abstract and efficient communication. Therefore the second emphasis of this work is put on the comparison of object oriented middleware architectures, especially Java-RMI. An own implementation for embedded systems is also presented
APA, Harvard, Vancouver, ISO, and other styles
18

Klerehag, Peter, and Joakim Lindberg. "Simulerad arbetsmiljö i Java." Thesis, KTH, Skolan för informations- och kommunikationsteknik (ICT), 2011. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-52451.

Full text
Abstract:
Hur olika människor lär sig nya kunskaper är högst individuellt, vissa kanske vill lyssna på musik medan vissa behöver absolut tystnad. Det som dock är gemensamt för alla är att det som behövs för att främja lärande är en stressfri miljö där eleven känner sig säker. En lagermiljö är ofta väldigt stressig och påfrestande och är inte en optimal plats för utbildning. En anställd på ICAs lager i Hacksta Västerås skall på en väldigt begränsad tid lära sig att köra truck, packa varor samt hantera ett komplicerat system. Upplärning i denna stressade miljö leder till osäkerhet och större risk för att göra fel. Ett sätt att effektivisera sättet en nyanställd lär sig på är att flytta ut de delar av upplärningen som går till ett klassrum. En virtuell lärandemiljö är ett väldigt bra hjälpmedel för att låta en användare testa och använda ett system i en säker och stängd miljö för att minska antalet fel som uppstår just till följd av osäkerhet. Denna rapport ämnar beskriva skapandet av just en sådan säker miljö för ICA AB i Västerås. För att lösa denna uppgift jämförs och diskuteras diverse tekniker som kan behöva användas för att kunna göra en så noggrann efterliknelse av det befintliga LS som möjligt samt förenkla vidareutveckling dvs. ge lösningen en bra struktur. Rapporten diskuterar också hur man kan bygga en bra struktur för applikationen. Resultatet av arbetet är en färdig produkt som är tänkt att användas vid upplärningen av ny anställda på lagret och som ska vara lätt att bygga vidare på. Den slutsats vi kan dra från detta är att ett objektorienterat språk som kan delas upp I paket är en väldigt bra lösning och en ren applikation med tydliga avgränsningar av vad som är simulerat och vad som är det faktiska programmet gav ett väldigt bra resultat. Applikationen som skapades kommer att vara ett väldigt bra hjälpmedel för de nya expeditörerna som kommer i framtiden
APA, Harvard, Vancouver, ISO, and other styles
19

Weiße, Carsten, and Rene Stöckel. "Quake II meets Java." Universitätsbibliothek Chemnitz, 2005. http://nbn-resolving.de/urn:nbn:de:swb:ch1-200500863.

Full text
APA, Harvard, Vancouver, ISO, and other styles
20

Gawetski, Krys. "Java data base connectivity." Thesis, National Library of Canada = Bibliothèque nationale du Canada, 1997. http://www.collectionscanada.ca/obj/s4/f2/dsk2/tape16/PQDD_0013/MQ31577.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
21

Nguyen, Vu. "Class firewalls in Java." Thesis, National Library of Canada = Bibliothèque nationale du Canada, 1999. http://www.collectionscanada.ca/obj/s4/f2/dsk1/tape7/PQDD_0021/MQ48439.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
22

Bakrim, Rachid. "Les assertions dans Java." Thesis, National Library of Canada = Bibliothèque nationale du Canada, 1999. http://www.collectionscanada.ca/obj/s4/f2/dsk1/tape7/PQDD_0006/MQ41845.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
23

Liu, Shendun. "Quick Java refactoring tool." Thesis, California State University, Long Beach, 2013. http://pqdtopen.proquest.com/#viewpdf?dispub=1524137.

Full text
Abstract:

Object Oriented Programming (OOP) is a contemporary favorite method of programming. OOP provides better flexibility, source codes are more organized and systematized, and it enables a group of developers to easily work with each other. Nevertheless, a poorly designed system will not only defeat the intention of coding with OOP, but also will make the software extremely difficult to maintain.

Refactoring is a powerful way to improve existing code. It only changes the structure of the source code without changing its functionality. Manually refactoring larger systems not only consumes large amounts of time and money, but it also happens to be incredibly inaccurate. As a result, quick and easy refactoring with partial automation is extensively discussed in the software realm.

This thesis presents algorithms for implementing nine refactorings that work on the fly for JAVA source code. The refactorings algorithms are implemented in a stepwise manner by initially selecting the source code portion for refactoring, and by choosing the correct refactoring method, and then programmatically changing the selected source code to achieve refactoring.

APA, Harvard, Vancouver, ISO, and other styles
24

Naeem, Nomair A. "Programmer-friendly decompiled Java." Thesis, McGill University, 2006. http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=101644.

Full text
Abstract:
Java decompilers convert Java class files to Java source. Common Java decompilers are javac-specific decompilers since they target bytecode produced from a particular javac compiler. We present work carried out on Dava, a tool-independent decompiler that decompiles bytecode produced from any compiler. A known deficiency of tool-independent decompilers is the generation of complicated decompiled Java source which does not resemble the original source as closely as output produced by javac-specific decompilers. This thesis tackles this short-coming, for Dava, by introducing a new back-end consisting of simplifying transformations.
The work presented can be broken into three major categories: transformations using tree traversals and pattern matching to simplify the control flow, the creation of a flow analysis framework for an Abstract Syntax Tree (AST) representation of Java source code and the implementation of flow analyses with their use in complicated transformations.
The pattern matching transformations rewrite the ASTs to semantically-equivalent ASTs that correspond to code that is easier for programmers to understand. The targeted Java constructs include If and If-Else aggregation, for-loop creation and the removal of abrupt control flow. Pattern matching using tree traversals has its limitations. Thus, we introduce a new structure-based data flow analysis framework that can be used to gather information required by more complex transformations. Popular compiler analyses e.g., reaching definitions, constant propagation etc. were implemented using the framework. Information from these analyses is then leveraged to perform more advanced AST transformations.
We performed experiments comparing different decompiler outputs for different sources of bytecode. The results from these experiments indicate that the new Dava back-end considerably improves code comprehensibility and readability.
APA, Harvard, Vancouver, ISO, and other styles
25

Parkinson, Matthew John. "Local reasoning for Java." Thesis, University of Cambridge, 2006. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.613674.

Full text
APA, Harvard, Vancouver, ISO, and other styles
26

Carlstrom, Brian D. (Brian David) 1973. "Embedding scheme in Java." Thesis, Massachusetts Institute of Technology, 2000. http://hdl.handle.net/1721.1/16764.

Full text
Abstract:
Thesis (M.Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, February 2001.
Includes bibliographical references (p. 171-176).
This electronic version was submitted by the student author. The certified thesis is available in the Institute Archives and Special Collections.
Extension languages are an important part of modern applications development. Java as a platform does not provide a standard extension language. Scheme is one possible choice as an extension language for Java. There are a variety of techniques for implementing Scheme in Java varying from interpreting s-expressions to compiling into Java byte-codes. The historical evolution of one implementation is discussed over the course of several years. The design of the Java-to-Scheme and Scheme-to-Java interfaces is reviewed. The advantages and disadvantages of Java and Scheme are compared.
by Brian D. Carlstrom.
M.Eng.
APA, Harvard, Vancouver, ISO, and other styles
27

Ollila, A. (Antti). "Java-pohjaiset ohjelmalliset transaktiomuistit." Master's thesis, University of Oulu, 2015. http://urn.fi/URN:NBN:fi:oulu-201505211559.

Full text
Abstract:
Erilaiset järjestelmät suorittavat nykypäivänä yhä enemmän rinnakkaista laskentaa prosessorien ja niiden laskentaytimien lukumäärän kasvaessa. Tämän seurauksena perinteiset lukkoihin perustuvat rinnakkaisuuden hallintamenetelmät tulevat koko ajan monimutkaisemmiksi käyttää ja implementoida. Ohjelmalliset transaktiomuistit ovat vaihtoehto perinteisille lukkoihin perustuville rinnakkaisuuden hallintamenetelmille. Ne lupaavat estää yhden perinteisten lukkojen pahimmista haittapuolista, eli lukkiutumien tapahtumisen, sekä yksinkertaistaa rinnakkain suoritettavan koodin kirjoittamista. Tässä pro gradu -tutkielmassa käytettiin tutkimusmenetelmänä teknologiavertailua, jonka tavoitteena oli selvittää ovatko ohjelmalliset transaktiomuistit varteenotettava vaihtoehto perinteisille lukkoihin perustuville ratkaisuille. Tutkielmassa kahteen valittuun synkronointiongelmaan, eli tuottaja-kuluttaja- ja lukija-kirjoittaja-ongelmaan, luotiin ratkaisut käyttäen yleiskatsauksessa valittuja erilaisia Javaan pohjautuvia ohjelmallisia transaktiomuistitoteutusvaihtoehtoja. Vertailun vuoksi synkronointiongelmiin tehtiin myös perinteisiin lukkoihin perustuvat toteutukset. Luotuja toteutuksia mitattiin ja vertailtiin tämän jälkeen käyttäen valittuja mittausparametreja. Saatujen mittaustulosten perusteella tutkimukseen valitut ohjelmalliset transaktiomuistit erosivat huomattavasti toisistansa sekä helppokäyttöisyyden että suorituskyvyn osalta. Deuce STM on huomattavasti helppokäyttöisempi kuin ScalaSTM, mutta kääntöpuolena sen suorituskyky on useissa tilanteissa huomattavasti heikompi. Myös molempien ohjelmallisten transaktiomuistien käyttämät vuonohjausmekanismit eroavat huomattavasti toisistansa. Lukkopohjainen toteutus suoriutui kuitenkin yleensä ottaen molempia ohjelmallisia transaktiomuistitoteutuksia paremmin. Tutkimuksen perusteella vaikuttaisi, että käytettäessä Java-ohjelmointikieltä, perinteisiin lukkoihin perustuva rinnakkaisuudenhallinta on vielä toistaiseksi ohjelmallisia transaktiomuisteja parempi vaihtoehto. Jos ratkaistava synkronointiongelma on hyvin monimutkainen ja sen ratkaisemisen tueksi ei löydy Java-ohjelmointikielestä valmiita mekanismeja, nousee hyvin optimoitu ohjelmallinen transaktiomuisti, kuten ScalaSTM, varteenotettavaksi vaihtoehdoksi. Lisäksi jos synkronointiongelmaan kuuluu huomattavasti enemmän lukuoperaatioita suhteessa kirjoitusoperaatioihin, voi ohjelmallinen transaktiomuistitoteutus tarjota mahdollisesti jopa suorituskyvyn lisäystä verrattuna perinteisiin lukkopohjaisiin ratkaisuihin. Tutkielmassa keskityttiin tarkastelemaan kahta eri synkronointiongelmaa käyttäen kahta eri Java-pohjaista ohjelmallista transaktiomuistitoteutusta sekä yhtä lukkoihin perustuvaa toteutusta. Tämä rajoittaa tutkielmassa saatujen tuloksien yleistettävyyttä.
APA, Harvard, Vancouver, ISO, and other styles
28

Zavaleta, Gavidia Jorge Juan. "Programação funcional usando Java." reponame:Biblioteca Digital de Teses e Dissertações da UFRGS, 1997. http://hdl.handle.net/10183/20923.

Full text
Abstract:
Desde a introdução da World Wide Web para o mundo nos inícios de 1990, usando a Internet como uma rede para transferir dados, empregando uma forma de expressão chamada de Hipertexto, a qual liga as informações relacionadas e combinadas com multimídia, os Webs resultantes têm aberto novas possibilidades de expressão e comunicação. A quantidade de tráfego de dados na Web e o número de computadores ofertando informação vem crescendo dramaticamente, mas falta expressividade e qualidade interativa na Web; ainda assim, vem despertando um grande interesse instrutivo e útil. O ilimitado universo de possibilidades da Web para acessar aplicações seguras, portáveis e independentes para cada plataforma em hardware e software e que possam chegar a qualquer lugar sobre a Internet, surge a linguagem Java da Sun Microsystem [DEC 95]. A habilidade de Java para executar código sobre hosts remotos de uma maneira segura é uma necessidade crítica para muitas organizações de desenvolvedores de software e provedores de Internet na atualidade [ARN 96]. A linguagem Java é realmente valiosa para redes de ambientes distribuídos como a Web. Entretanto, Java vai mais longe deste domínio ao fornecer uma linguagem de programação de propósito geral poderosa e adequada para construir uma variedade de aplicações que não dependem das características da rede [ARN 96]. O modelo imperativo tradicional é padrão e quase universal vem tendo uma profunda influência sobre a natureza das linguagens de programação e ainda continua a tendência de sempre ter uma direção para fornecer mais e mais formas abstratas de resolver problemas, tentando mudar a simplicidade na programação com rapidez na execução de programas [FIE 88]. Parece. portanto, natural e quase inevitável o desenvolvimento em tecnologia das linguagens. Os amplos esforços gastos em desenvolver métodos rigorosos para especificar, produzir, verificar software e produtos de hardware, mas os esforços foram restringidos às linguagens convencionais. A aproximação natural de Von Neumann tem contribuído a esta falha desde a noção de um estado global que pode mudar arbitrariamente em cada passo da computação e vem sendo provado ser intuitivamente e matematicamente intratável. Esta falha tem tornado ao software o componente mais caro para muitos sistemas de computação [GLA 84]. Os primeiros passos para solucionar estas falhas foram tomadas pela programação estruturada ao trabalhar nas áreas de especificação formal, verificação de programas e na semântica formal que ainda continuam em pesquisa. O crescimento numeroso de pesquisadores têm certeza de que os problemas originam-se da aproximação fundamental à filosofia de Von Neumann e estão voltando-se para uma linguagem de um novo tipo. Uma de tais aproximações é a tomada pelas linguagens de programação funcional [PLA 93]. Num programa funcional, o resultado de uma função chamada é unicamente determinado pelos valores atuais dos argumentos da função [PLA 93]. As linguagens de programação funcional têm a vantagem que elas oferecem um uso geral das funções, o qual não esta disponível nas linguagens imperativas clássicas. Devido a ausência de efeitos colaterais, as provas de correção dos programas são mais fáceis que nas linguagens imperativas. As funções podem ser avaliadas em qualquer ordem assim como a disponibilidade total das mesmas, a nova geração de linguagens funcionais também oferecem uma elegante noção de uso amigável [PLA 93]. Os padrões e a proteção que fornecem ao usuário um acesso simples a estruturas de dados complexos, basicamente não tendo a preocupação do gerenciamento da memória, como faz a linguagem Java. O objetivo principal deste trabalho é a descrição da implementação de um Construtor de Funções Java (LispJ), usado para gerar funções Lisp em código Java utilizando a linguagem Java da Sun Microsystem como ambiente de desenvolvimento. A descrição compreende a codificação de um Interpretador Lisp da linguagem funcional LISP, e a codificação do Construtor de Funções Java visualizado através de um applet Java utilizado como interface entre o Construtor de Funções Java e o usuário sobre a Internet.
Since the introduction of the World Wide Web to the world in the beginning of the nineties, using the Internet as a network to transfer data, using a form of expression called Hypertext, which connects related and combined information with multimedia, the resulting Webs have opened new possibilities of expression and communication. The amount of data traffic in the Web and the number of computers offering information have been growing dramatically, but there is a lack of interactive expressivity and quality in the Web; nevertheless, its instructive and useful interest is growing wider. From the unlimited universe of possibilities of the Web to access safe, portable and independent applications for each platform in hardware and software and that are able to get anywhere on the Internet, there is the Java Sun Mycrosystem language [DEC 95]. Java's ability to perform code on remote hosts in a safe way is a critical need for many software developing organizations and Internet providers nowadays [ARN 96]. Java language is really valuable for network environments arranged as the Web. However, Java extends further from this domain as it provides a broad programming language that is powerful and adequate to build a variety of applications which do not depend on the characteristics of the network [ARN 96]. The prevailing traditional model is a pattern and almost universal, has had a deep influence on the nature of the programming languages and there is still a trend of one direction to provide more and more abstract ways of solving problems, trying to change the simplicity in the fast programming in programs run [FIE 88]. It seems, therefore, natural and almost inevitable the development in technology of the programming languages. Wide efforts were made to develop strict methods to specify, produce, check software and hardware products, but the efforts were restricted to conventional languages. Von Neumann's natural approximation has contributed to this gap since the notion of a global state which can change arbitrarily in each step of the computer science and has proven to be intuitively and mathematically intractable. This gap has turned the software into the most expensive component for many computing systems [GLA 84]. The first steps to solve these gaps were taken by the structured programming when working on the areas of formal specification, programs checking and the formal semantics, which are still being researched. The ever growing number of researchers are sure that the problems come from the fundamental approximation to Von Neumann's philosophy and are turning to a new kind of language. One of such approximations is the one through the functional programming languages [PLA 93]. In a functional program, the result of a called function is determined only by the present values of the function arguments [PLA 93]. The functional programming languages have the advantage of offering a general use of the functions, which is not available in the classic prevailling lan guages [PLA 93]. Due to absence of side effects, the correction tests in the programs are easier than in the prevailing languages. The functions may be evaluated in any order and so may their total disposal. The new generation of functional languages also offers an elegant notion of friendly use [PLA 93]. The patterns and protection offer the user a simple access to complex data structures, basically by not worrying about memory management, as occurs with the Java language. The main objetive of this work is the description of the implementation of a Java Functions Builder (Lisp1), used do generate Lisp functions in Java code utilizing the Java language from Sun microsystem as a developing environment. The description covers the code of the Lisp Interpreter of the LISP functional language, and the Java Functions Builder code visualized through a Java applet utilized as interface between the Java Functions Builder and the users on the Internet.
APA, Harvard, Vancouver, ISO, and other styles
29

Замятин, Д. С., and Я. В. Пишта. "Методы защиты java программ." Thesis, Издательство СумГУ, 2011. http://essuir.sumdu.edu.ua/handle/123456789/25297.

Full text
APA, Harvard, Vancouver, ISO, and other styles
30

Tomaštík, Marek. "Genetické programování - Java implementace." Master's thesis, Vysoké učení technické v Brně. Fakulta strojního inženýrství, 2013. http://www.nusl.cz/ntk/nusl-230616.

Full text
Abstract:
This Master´s thesis implements computer program in Java, useful for automatic model generating, specially in symbolic regression problem. Thesis includes short description of genetic programming (GP) and own implementation with advanced GP operands (non-destructive operations, elitism, exptression reduction). Mathematical model is generating by symbolic regression, exacly for choosen data set. For functioning check are used test tasks. Optimal settings is found for choosen GP parameters.
APA, Harvard, Vancouver, ISO, and other styles
31

Ahmed, Sipan. "Java integrering med PLC." Thesis, Högskolan i Gävle, Avdelningen för elektroteknik, matematik och naturvetenskap, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:hig:diva-33196.

Full text
Abstract:
Digitization has been given a greater role in the monitoring and control of a processing plant. This trend will grow globally to achieve a smarter production chain that generates ecenomic profits. The purpose of this thesis was to develop an existing process that respresents an automated drilling station. THis i scontrolled by integrating Java-netbeans software into the PLC hardware with a user interface that can read the data flow of PLC.The drilling station is controlled by PLC. This work describes the possible methods for achieving integration between Java-netbeans and PLC.  The essential part of the work was literature study, programming of source code and programming of PLC. This work achieved all the objectives.
Digitaliseringen har fått en större roll i övervakning och styrning av en processanläggning. Denna trend kommer att växa globalt för att uppnå en smartare produktionskedja som giver ekonomiska vinster. Syftet med detta examensarbete var att utveckla en befintlig process som föreställer en automatiserad borrstation. Detta styrs genom lufttryck, sensorer, cylindrar och relä ventiler. Utvecklingen skedde genom att integrera Java-netbeans mjukvara till PLC hårdvaran med ett användargränssnitt som kan läsa av dataflödet av PLC. Borrstationen styrs av PLC. I detta arbete beskrivs vilka möjliga metoder det finns för att uppnå integrering mellan Java-netbeans och PLC. Arbetets essentiella delar var litteraturstudie, programmering av källkod och programmering av PLC. Detta arbete uppnådde alla målsättningar.
APA, Harvard, Vancouver, ISO, and other styles
32

Nuggehally, Mohan A. "Java 3D for UCWaves." University of Cincinnati / OhioLINK, 2002. http://rave.ohiolink.edu/etdc/view?acc_num=ucin1027448463.

Full text
APA, Harvard, Vancouver, ISO, and other styles
33

Barros, Pedro Loura. "Linguagem concurrent Contract-Java." Master's thesis, Universidade de Aveiro, 2016. http://hdl.handle.net/10773/21754.

Full text
Abstract:
Mestrado em Engenharia de Computadores e Telemática
Resumo não disponivel
The goal of this thesis is the study on the integration of mechanisms from concurrent programming, objected-oriented languages, and Designby- Contract. We propose a new language, Concurrent Contract-Java (CCJava), that's an extension of Contract-Java, a language that has extended Java with Design-by-Contract language mechanisms. CCJava aims to ease object-oriented concurrent programming, ensuring safety (no race conditions will occur) and abstracting away lower level concurrent realizations such as the choice for shared object synchronization schemes. It reuses the semantics of Java mechanisms, together with the semantics of objects and Design-by-Contract constructs, providing simple and expressive language mechanisms for concurrency. CCJava guarantees all aspects of a shared object's concurrent utilization and thread creation, using only two new language keywords: shared, and remote. A compiler was developed implementing the more important language mechanisms, and used as a proof of concept of our proposals
APA, Harvard, Vancouver, ISO, and other styles
34

Gudka, Khilan. "Lock inference for Java." Thesis, Imperial College London, 2013. http://hdl.handle.net/10044/1/10945.

Full text
Abstract:
Atomicity is an important property for concurrent software, as it provides a stronger guarantee against errors caused by unanticipated thread interactions than race-freedom does. However, concurrency control in general is tricky to get right because current techniques are too low-level and error-prone. With the introduction of multicore processors, the problems are compounded. Consequently, a new software abstraction is gaining popularity to take care of concurrency control and the enforcing of atomicity properties, called atomic sections. One possible implementation of their semantics is to acquire a global lock upon entry to each atomic section, ensuring that they execute in mutual exclusion. However, this cripples concurrency, as non-interfering atomic sections cannot run in parallel. Transactional memory is another automated technique for providing atomicity, but relies on the ability to rollback conflicting atomic sections and thus places restrictions on the use of irreversible operations, such as I/O and system calls, or serialises all sections that use such features. Therefore, from a language designer's point of view, the challenge is to implement atomic sections without compromising performance or expressivity. This thesis explores the technique of lock inference, which infers a set of locks for each atomic section, while attempting to balance the requirements of maximal concurrency, minimal locking overhead and freedom from deadlock. We focus on lock-inference techniques for tackling large Java programs that make use of mature libraries. This improves upon existing work, which either (i) ignores libraries, (ii) requires library implementors to annotate which locks to take, or (iii) only considers accesses performed up to one-level deep in library call chains. As a result, each of these prior approaches may result in atomicity violations. This is a problem because even simple uses of I/O in Java programs can involve large amounts of library code. Our approach is the first to analyse library methods in full and thus able to soundly handle atomic sections involving complicated real-world side effects, while still permitting atomic sections to run concurrently in cases where their lock sets are disjoint. To validate our claims, we have implemented our techniques in Lockguard, a fully automatic tool that translates Java bytecode containing atomic sections to an equivalent program that uses locks instead. We show that our techniques scale well and despite protecting all library accesses, we obtain performance comparable to the original locking policy of our benchmarks.
APA, Harvard, Vancouver, ISO, and other styles
35

Nguyen, Vu Carleton University Dissertation Computer Science. "Class firewalls in Java." Ottawa, 1999.

Find full text
APA, Harvard, Vancouver, ISO, and other styles
36

Kienle, Holger M. "A SUIF Java compiler." [S.l.] : Universität Stuttgart , Fakultät Informatik, 1998. http://www.bsz-bw.de/cgi-bin/xvms.cgi?SWB6783619.

Full text
APA, Harvard, Vancouver, ISO, and other styles
37

Barbisch, Martin. "Landschaftsvisualisierung mit Java 3D." [S.l. : s.n.], 2002. http://www.bsz-bw.de/cgi-bin/xvms.cgi?SWB10252201.

Full text
APA, Harvard, Vancouver, ISO, and other styles
38

Annavajjala, Karuna. "Java challenge software project." Morgantown, W. Va. : [West Virginia University Libraries], 1999. http://etd.wvu.edu/templates/showETD.cfm?recnum=893.

Full text
Abstract:
Thesis (M.S.)--West Virginia University, 1999.
Title from document title page. Document formatted into pages; contains viii, 107 p. : ill. (some col.) Vita. Includes abstract. Includes bibliographical references (p. 79-80).
APA, Harvard, Vancouver, ISO, and other styles
39

Nuggehally, Mohan. "Java 3D for UCWaves." Cincinnati, Ohio : University of Cincinnati, 2002. http://rave.ohiolink.edu/etdc/view?acc%5Fnum=ucin1027448463.

Full text
APA, Harvard, Vancouver, ISO, and other styles
40

Butler, Simon. "Analysing Java identifier names." Thesis, Open University, 2016. http://oro.open.ac.uk/46653/.

Full text
Abstract:
Identifier names are the principal means of recording and communicating ideas in source code and are a significant source of information for software developers and maintainers, and the tools that support their work. This research aims to increase understanding of identifier name content types - words, abbreviations, etc. - and phrasal structures - noun phrases, verb phrases, etc. - by improving techniques for the analysis of identifier names. The techniques and knowledge acquired can be applied to improve program comprehension tools that support internal code quality, concept location, traceability and model extraction. Previous detailed investigations of identifier names have focused on method names, and the content and structure of Java class and reference (field, parameter, and variable) names are less well understood. I developed improved algorithms to tokenise names, and trained part-of-speech tagger models on identifier names to support the analysis of class and reference names in a corpus of 60 open source Java projects. I confirm that developers structure the majority of names according to identifier naming conventions, and use phrasal structures reported in the literature. I also show that developers use a wider variety of content types and phrasal structures than previously understood. Unusually structured class names are largely project-specific naming conventions, but could indicate design issues. Analysis of phrasal reference names showed that developers most often use the phrasal structures described in the literature and used to support the extraction of information from names, but also choose unexpected phrasal structures, and complex, multi-phrasal, names. Using Nominal - software I created to evaluate adherence to naming conventions - I found developers tend to follow naming conventions, but that adherence to published conventions varies between projects because developers also establish new conventions for the use of typography, content types and phrasal structure to support their work: particularly to distinguish the roles of Java field names.
APA, Harvard, Vancouver, ISO, and other styles
41

Žamberský, Zdeněk. "Zpětný překladač jazyka Java." Master's thesis, Vysoké učení technické v Brně. Fakulta strojního inženýrství, 2015. http://www.nusl.cz/ntk/nusl-232034.

Full text
Abstract:
The goal was to create decompiler for Java programing language. Decompiler should reconstruct original Java source code from class files, representing its compiled form. First part of thesis focuses on Java langage, its compilation and structure of class file. Then Java Virtual Machine and its instruction set is discussed. After that thesis focuses on decompilation and algoritms designed and used for decompiler realization. Examples of decompiled code are presented.
APA, Harvard, Vancouver, ISO, and other styles
42

Taylor, Kristina Boysen. "A specification language design for the Java Modeling Language (JML) using Java 5 annotations." [Ames, Iowa : Iowa State University], 2008.

Find full text
APA, Harvard, Vancouver, ISO, and other styles
43

Frederickson, Clint Michael. "Object mapping with Java annotations." Thesis, Montana State University, 2005. http://etd.lib.montana.edu/etd/2005/frederickson/FredericksonC0505.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
44

Stenzel, Kurt. "Verification of Java card programs." [S.l.] : [s.n.], 2005. http://deposit.ddb.de/cgi-bin/dokserv?idn=975584510.

Full text
APA, Harvard, Vancouver, ISO, and other styles
45

Kimmefors, Ann, and Niclas Nilsson. "Kunddatabas i Java och MySQL." Thesis, Linköping University, Department of Computer and Information Science, 2003. http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-2088.

Full text
Abstract:

The purpose with this work that is the basis for this thesis was to help Nattavaara Economical association to develop a program for handling invoices, customer information, and storage. The program and this thesis have been done in cooperation with the economical association in Nattavaara.

Some of the demands on the program are that it shall handle customer information, storage status, invoices and diesel consumption. The program must be able to printout invoices, reminders, delivery notes, a customer list and a storage list. All information will be stored in a database.

The program was implemented in the program language Java and with a MySQL database; since they both are platform independent and we have previous experience using them.

The program is window based and built around the usage of tabbed windows; there every tab represents an own functionality, this to create a foreseeable and easy navigated program. User friendliness is something that has been taken into consideration in the process of developing this program, among other things through grouping of adjacent information and the placement of buttons. One of the conclusions with this work is that Java can with advantage be used to create graphical interfaces with connections to databases.

Further development of the program could be for example to improve the quality of the printouts and the handling of the database initiation.

APA, Harvard, Vancouver, ISO, and other styles
46

Liaqat, Ahmad Gull, and Aijaz Ahmad. "Plagiarism Detection in Java Code." Thesis, Linnéuniversitetet, Institutionen för datavetenskap, fysik och matematik, DFM, 2011. http://urn.kb.se/resolve?urn=urn:nbn:se:lnu:diva-13231.

Full text
APA, Harvard, Vancouver, ISO, and other styles
47

Iftikhar, Muhammad Usman. "Java Code Transformation for Parallelization." Thesis, Linnéuniversitetet, Institutionen för datavetenskap, fysik och matematik, DFM, 2011. http://urn.kb.se/resolve?urn=urn:nbn:se:lnu:diva-13179.

Full text
Abstract:
This thesis describes techniques for defining independent tasks in Java programs forparallelization. Existing Java parallelization APIs like JOMP, Parallel Java,Deterministic Parallel Java, JConqurr and JaMP are discussed. We have seen that JaMPis an implementation of OpenMP for Java, and it has a set of OpenMP directives andruntime library functions. We have discussed that JaMP has source to byte codecompiler, and it does not help in debugging the parallel source codes. There is no designtime syntax checking support of JaMP directives, and we know about mistakes onlywhen we compile the source code with JaMP compiler. So we have decided tocontribute JaMP with adding an option in the compiler to get parallel source code. Wehave created an eclipse plug-in to support design time syntax checking of JaMPdirectives too. It also helps the programmers to get quickly parallel source code withjust one click instead of using shell commands with JaMP compiler.
APA, Harvard, Vancouver, ISO, and other styles
48

Ahern, Alexander Joseph. "Code mobility and Java RMI." Thesis, Imperial College London, 2006. http://hdl.handle.net/10044/1/8700.

Full text
APA, Harvard, Vancouver, ISO, and other styles
49

Bahrami, Azadeh. "Säkerhetssystem för dokumenthantering i Java." Thesis, KTH, Skolan för datavetenskap och kommunikation (CSC), 2015. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-166604.

Full text
Abstract:
Det arbete som har utförts under våren och sommaren 1999 på Siemens Elema och som behandlas i denna rapport, hade som mål att implementera säkerhetsfunktioner i ett dokumenthanteringssystem för patientjournaler. Arbetet baseras på ett testsystem bestående av en applet och en servlet som i princip hade samma funktionalitet som det tilltänkta dokumenthanteringssystemet (loggade in användare, hämtade en fil från server, möjliggjorde för användaren att ändra i filen och till slut sparade filen på servern). Följande säkerhetsfunktioner implementerades: - Säker inloggning med dubbel, stark autentisering med certifikatsystem. Inloggningsproceduren undviker att skicka användarens lösenord över nätet. - Säker, krypterad dataöverföring med SSL - Digitala signaturer som ger positivt bevis av att ett sparat dokument på servern har skickats in av en viss användare. Hela systemet implementerades i Java 1.2 med standardkomponenter, som är fritt tillgängliga utan kostnad.  Beslutet att använda Java 1.2 som utvecklingsplattform medförde att flera problem uppstod p.g.a. att säkerhetsfunktionaliteten i Java 1.2 (senare kallad Java 2) är relativt ny, oprövad och stödet för den är ännu inte fullt implementerat i de webbläsare som är mest vanliga (Netscape Communicator och InternetExplorer4). Dessa problem är delvis lösta eller kan kringgås och systemet kan nu installeras och köras på en vanlig PC, via en vanlig webbläsare.
The work carried out during the spring and summer of 1999 at Siemens Elema and covered in this report, aimed to implement security features in a document management system for patient records. The work is based on a test system consisting of an applet or a servlet which basically had the same functionality as the intended document management system (logged in users, downloaded a file from the server, allowing the user to modify the file, and finally saved the file on the server). The following features were implemented: - Secure login with double, strong authentication with certificate system. The logon procedure avoids sending the user's password over the network. - Secure, encrypted data transfer with SSL - Digital signatures that provide positive evidence of a saved document on the server are submitted by a particular user. The whole system was implemented in Java 1.2 with standard components, which is freely available at no cost. The decision to use Java 1.2 as development platform resulted in several problems arose due to security functions in Java 1.2 (later called Java 2) is relatively new, untested and the support for it is not yet fully implemented in the browsers that are most common (Netscape Communicator and InternetExplorer4). This problem is partly solved or can be circumvented and the system can now be installed and run on a standard PC, via a standard Web browser.
APA, Harvard, Vancouver, ISO, and other styles
50

Falck, Tomas, and Magnus Quist. "Java Teknologi för mobila enheter." Thesis, Blekinge Tekniska Högskola, Institutionen för programvaruteknik och datavetenskap, 2001. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-1705.

Full text
Abstract:
Denna utredning har gjorts för att genomlysa en teknik som går under namnet JavaTM 2 Micro Edition (J2METM). Vårt mål var att grundligt belysa tekniken och tanken bakom J2ME samt att visa på för- respektive nackdelar med tekniken avseende prestanda och säkerhet. Ett annat mål med utredningen var att visa på praktisk användbarhet av Java i mobiltelefoner och konsekvenser på den mobila infrastrukturen. J2ME är en plattform skapad för att tillmötesgå behoven från den snabbt växande marknaden av produkter som försetts med processorkraft. Dessa datoriserade enheter är mindre än traditionella bordsdatorer och har därmed en annan typ av fysiska begränsningar i form av t.ex. minne, processorkraft, bildskärm mm. Syftet med denna plattform är att skapa en optimerad Java-miljö som lämpar sig för dessa mindre enheter. Med Java-teknologi i de mobila enheterna kan användare i större utsträckning än tidigare påverka vilka ändamål enheten ska användas för. Detta genom att ladda ner applikationer och köra dem offline eller online på den mobila enheten. Eftersom Java är ett plattformsoberoende programspråk är tanken att en applikation ska kunna köras på många olika enheter som implementerat J2ME. Mobiltelefoner med J2ME är på väg att lanseras på den svenska marknaden. Utredningen beskriver en trolig utveckling av tjänster och applikationer och vem som kommer att erbjuda dessa tjänster och applikationer för användare. Spel förväntas dominera marknaden av MIDlets till en början men vi anser att olika former av anpassade informationstjänster är det som kommer att efterfrågas av stora kundgrupper när tekniken mognat. Utredningen visar även på en del brister när det gäller portabilitet och säkerhet. Vi har kommit fram till att J2ME och profilen MIDP är tekniker som kommer att spela en stor roll i ett framtida mobilt Internet. Vi är därför övertygade om att allt fler mobila terminaler i framtiden kommer att innehålla Java-teknologi
This thesis describes and investigates a technique called JavaTM 2 Micro Edition. Our goal was to show the idea behind J2ME and the negative and positive sides that the technique brings in respect of performance and security. Another goal with the thesis was to investigate the practical usefulness of Java in mobile devices and the consequences that the technique will bring to the mobile infrastructure. J2ME is a platform created for the demands of the fast growing market of embedded devices. This type of devices are smaller than traditional desktop computers which means that they have more physical restrictions in the form of available memory, processing capacity, limited displays and so on. The purpose of the platform is to create an optimised Java-environment for this type of devices. Java-technology in mobile devices means that users, more than before, can influence what the device will be used for. This by downloading applications and run them offline or online on the mobile device. Java is not dependent of the platform that it runs on and the idea is therefore that applications shall be able to run on many different devices as long as they have implemented J2ME. Mobile phones with J2ME technology will soon be available on the Swedish market. This thesis describes possible future applications and the possible suppliers of these applications. Games are expected to dominate the market of MIDlets in the beginning, but we think that different kinds of information services will be the winner in the future. This thesis also shows some shortcomings in the form of portability and security. We have found that J2ME and the profile MIDP are techniques that will play an important role in the development of the mobile Internet. We are convinced that more and more mobile devices will be implemented with Java technology in the future.
APA, Harvard, Vancouver, ISO, and other styles
We offer discounts on all premium plans for authors whose works are included in thematic literature selections. Contact us to get a unique promo code!

To the bibliography