- General info
- Functionalities
- Technologies
- Setup
These are my solutions of course on Coursera "Object Oriented Programming in Java Specialization" (https://www.coursera.org/specializations/object-oriented-programming). There are four parts of this course:
- Java Programming: Solving Problems with Software
- Java Programming: Arrays, Lists and Structured Data
- Object Oriented Programming in Java
- Data Structures and Performance
-
Java Programming: Solving Problems with Software
-
- First exercise was to perform some calculations on a strand of DNA, such as calculate non-overlapping number of genes, calculating number of "CTG" codons. I also got number of strings which length was > 60 and ratio of C and G in genes. Project folders: StringsFirstAssingments, StringsSecondAssignments, StringsThirdAssignments.
-
- Second exercise was about working with CSV files, comparing values and returning maximum, minimum or average values. There was mostly weather data. Project folders: ParsingExportData, ParsingWeatherData.
-
- Third exercise was also about working with CSV files, working with DirectoryResource and FileResource. Project folder: BabiesNames.
-
- Fourth exercise was about converting images to grayscale and inverting colors. Project folders: BatchGrayscaleImages, ImageInversion.
-
-
Java Programming: Arrays, Lists and Structured Data
-
- First exercise was about implementing the Caesar Cipher, with one key and two keys and breaking it. To break it, it was checked what was the distance of the index in the alphabet of most frequent letter to the letter 'e', which is most frequent in English alphabet. The shift in the alphabet was calculated and cipher was broken. Then, the same method was used to break the cipher with two keys. There was also decryption with two keys. Project folder: Ciphers.
-
- Second exercise was about making Cipher object-oriented. Project folder: CiphersOOP.
-
- Third exercise was about counting unique words frequencies and counting how many times Character occured in play. Project folder: WordFrequencies.
-
- Fourth exercise was about making stories with some random words. I used ArrayList for these lists of words. Next, HashMap was introduced. Project folder: GladLib.
-
- Exercise was about using HashMaps for GladLib, checking in which files a word occured and counting occurrences of codons in DNA. Project folders: GlabLib, DNA.
-
- Task was about parsing logs and extracting information. ArrayLists and HashMaps are used. Project folder: LogsAndIPs.
-
- In seventh task I have implemented Vigenere Cipher breaker. It takes a dictionary of words and tries different key lengths, finds a text with most matching words to a dictionary of words in selected language. Extension of a program was about guessing a language and key length of an encrypted message. Project folder: VigenereProgram.
-
-
Object Oriented Programming in Java
-
- First exercise was about displaying map of a current location in a window. Project folder: UCSDUnfoldingMaps/src/module1.
-
- In second exercise I have followed the instructions in the course and displayed points of earthquakes around the world. I have also colored the map according to the life expectancy averages. Project folders: UCSDUnfoldingMaps/src/earthquake_module and UCSDUnfoldingMaps/src/life_expectancy.
-
- In the third exercise I have displayed a legend for the points of earthquakes. Project folder: UCSDUnfoldingMaps/src/module3.
-
- Fourth exercise was about displaying a legend for points of earthquakes and different colors depending on a scale. Project folder: UCSDUnfoldingMaps/src/module4.
-
- Fifth exercise was about displaying information about cities and earthquakes when hovering mouse over these points. Project folder: UCSDUnflodingMaps/src/module5.
-
- This exercise was about sorting earthquakes in reverse order using built-in java sort method. Project foldrr: USCDUnfoldingMaps/src/module6.
-
- Java