Skip to content
View MiraiChan's full-sized avatar
Block or Report

Block or report MiraiChan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
MiraiChan/README.md

Hello World, I'm Almira πŸ‘‹

I am a beginner iOS Developer. I started my thorough training and introduction to the features of the iOS platform and the Apple ecosystem, tasks iOS developers do on a daily basis with the help of courses on iOS development from Yandex Practicum in 2023.

πŸ’‘ The skills I have acquired during this time: SwiftUI, UIKit (Auto Layout and storyboards), Combine, UserDefaults, Keychain, CoreData, MVC, MVP, MVVM design patterns, SOLID, DRY, YAGNI, KISS, REST API requests, working with Postman, pagination; Unit and UI testing, Multithreading: preventing race condition (Dispatch Queue, blocking UI), Git, conducting code review.
🌎 2024 Goals: Find a dream job and contribute to projects!

Language

Swift


Tools

XCode

Git

GitHub

Terminal

Firebase






More information about my skills.

During the training period, I implemented the following projects:

iOS-FakeNFT-StarterProject-Public
Graduation thesis project. The goal was to learn to interact with the external API (FakeNFT) and get to know various types of servers in the context of developing mobile applications for iOS, as well as to use development tools to test and validate functionality. This experience also demonstrates the importance of properly documenting and controlling data types when dealing with network requests. Here are the main skills I learned from this project:

  • Types of servers: Understanding the differences between production and test servers.
  • Using external APIs: Working with the FakeNFT API, including using authorization tokens, sending GET and PUT requests to receive and update data, as well as processing data sorting.
  • Documenting the API: Familiarization with the API documentation provided in the file API.html , including endpoints, query types, and response data structure.
  • Using Developer Tools: Familiarization with tools such as Postman for sending test requests and verifying API operation. Mastering ways to save query collections and share them.
  • Data type control: Understanding the importance of correctly describing data types in network models in order to avoid errors and inconsistencies in the transmitted data.
  • Teamwork and API recovery: The ability to work with the team when changing code fragments and understanding the process of creating branches for new tasks. Awareness of the need to restore the API in case of "broken" changes and the use of tools such as Postman for this purpose.

Tracker
The third important fully independent project, the aim of which was mainly to teach me how to implement the business logic of the project. I was introducced to an important entity for development β€” databases and learned about different types of databases, how to make SQL queries and view the contents of database files using third-party tools like the Core Data framework, which provides an interface for working with databases.

ImageFeed
The second full-fledged application. The aim of the project was to explore new topics that occur in real projects and affect important aspects of mobile development:

  • Sourcetree
  • Launch screen
  • Authorization using the OAuth 2.0
  • UITableView Table
  • Advanced tests with files/network. Unit testing
  • Code layout using Auto Layout
  • Navigation
  • UIScrollView
  • Swift Package Manager (SPM)
  • Multithreading
  • Pagination when working with the network
  • Keychain: Data Security
  • Animation

MovieQuiz-ios
The first fully functional attractive and user-friendly mobile application. The main goals and objectives of the project included:

  • Creation of a user interface (UI).
  • Organization of the project structure: Separation of files and resources into appropriate folders (Presentation, Models, Services, Helpers, Resources) in order to conveniently and logically manage the code.
  • Handling application states, errors and improving the user experience: working with different scenarios and providing a satisfactory user experience in various situations, preventing negative impact on the user experience.
  • Network and data maintenance: Using the Services folder to implement functionality related to network requests and data processing.
  • Usage of auxiliary tools: Integration of files in the Helpers folder to ensure convenience in working on specific aspects of the application.
  • Project Resource Management: Use the Resources folder to store various resources, such as fonts, colors and icons, in order to easily manage and maintain the project.
  • Ensuring compliance with TK requirements: Attention to details such as iOS version restrictions, Bundle Id settings, and compliance with screen mode restrictions.
  • Learning how to work with Git.

Counter
The first project in swift - an introduction to the basis iOS development. The goal was get the first experience with the user interface, to create interactive elements and see the results of their work, to know the idea how to connect interface elements with application logic, creating the first bridge between idea and reality, as well as gain the confidence to create own projects later.

Popular repositories

  1. MoexCalculator MoexCalculator Public

    A small MoexCalculator application. It will receive current currency quotes from the Moscow Exchange, display them as a list and convert the currency into rubles.

    Swift 2

  2. MovieQuiz-ios MovieQuiz-ios Public

    Forked from Yandex-Practicum/MovieQuiz-ios

    Application: MovieQuiz is an application with quizzes about films from the top 250 ratings and the most popular films according to IMDb.

    Swift

  3. Counter Counter Public

    Application: a simple counter. The idea is simple: how many times the "+" button was clicked β€” this number is displayed on the counter. The history is also available.

    Swift

  4. ImageFeed ImageFeed Public

    Application: Multi-page application with a feed of images uploaded via the Unsplash API.

    Swift

  5. Tracker Tracker Public

    Application: Daily habit tracker helps users form healthy habits and monitor their implementation.

    Swift

  6. iOS-FakeNFT-StarterProject-Public iOS-FakeNFT-StarterProject-Public Public

    Forked from iamjohansson/iOS-FakeNFT-StarterProject-Public

    πŸ‘¨β€πŸ’»πŸ‘©β€πŸ’»Team project: iOS-Fake Marketplace. The app helps users browse and buy NFTs. The purchasing process is simulated using a mock server.

    HTML