Skip to content

Instantly share code, notes, and snippets.

View byJeevan's full-sized avatar
💭
Working from Home 🏡

Jeevan byJeevan

💭
Working from Home 🏡
View GitHub Profile
@byJeevan
byJeevan / swift.gitignore
Created November 18, 2021 04:22 — forked from SteveRohrlack/swift.gitignore
swift .gitignore template
# see https://gist.github.com/muhasturk/df28ec9d2cc18bf1cfc8
# see https://github.com/github/gitignore/blob/master/Swift.gitignore
*.xcodeproj/*
!*.xcodeproj/project.pbxproj
!*.xcodeproj/xcshareddata
#
# *.lock - this is used and abused by many editors for many different things.
# For the main ones I use (e.g. Eclipse), it should be excluded
@byJeevan
byJeevan / iOSCodeReviewChecklist.txt
Created September 19, 2021 07:22 — forked from pallavtrivedi03/iOSCodeReviewChecklist.txt
A checklist for iOS Code Review.
iOS Code Review Checklist
Avoid Type Inference
Prefer using Higher Order Functions
Write DRY code (Don’t Repeat Yourself)
Make sure that there are no force unwraps
Make sure that there are no retain cycles
Check if any deprecated API is being used
Check if any hardcoded checks (generally strings) can be changed to enum.
Prefer enum, switch over if else.
SwiftUI Components & Extension that saves iOSDev time.
### UIKit is **EVENT-Driven** framework - We could reference each view in the hierarchy, update its appearance when the view is loaded or as a reaction on an event.
### SwiftUI is **Declarative, State Driven** framework - We cannot reference any view in the hierarchy, neither can we directly mutate a view as a reaction to an event.
Instead, we mutate the state bound to the view. Delegates, target-actions, responder chain, KVO .. replaced with Closures & bindings.
--------------------------------------------------
##Flutter Notes
from byjeevan.blogspot.com
--------------------------------------------------
Course Res: https://github.com/londonappbrewery/Flutter-Course-Resources
Flutter Cheetsheet : https://medium.com/flutter-community/flutter-layout-cheat-sheet-5363348d037e
Dark Cheetsheet : https://dart.dev/codelabs/dart-cheatsheet
🎯 Dart is Object Oriented Programming languages.
@byJeevan
byJeevan / Swift - Alison Course
Last active June 7, 2020 19:40
Explore swift APIs that reduces lots of code effort
@byJeevan
byJeevan / Read me of DEFOLD
Created September 15, 2019 15:15
Read me of DEFOLD
Colorslide tutorial
Welcome to the Colorslide game tutorial. It will take you through the process of adding a simple GUI flow to an existing multi level mobile game. It is assumed that you know your way around the editor. If you don't, please check out our manuals and beginner tutorials.
The starting point for this tutorial is this project. It contains everything you need:
A simple but fully playable game where the player slides colored bricks on a tiled board until every brick's color matches the tile they sit on.
4 example levels are included. They are of various difficulty. Each level is built in its own collection.
Assets are included so you can build any number of levels, using the built in tile editor.
After having finished the tutorial, you will have accomplished the following:
@byJeevan
byJeevan / Swift iOS Recipes
Last active April 6, 2024 14:05 — forked from bobbyali/Swift iOS Recipes
Swift iOS Code Recipes
Swift iOS Recipes
==================
> https://github.com/JohnSundell/SwiftTips
** GUI Layout **
//Avoid Table view having Textfield covered by Keyboard
override func viewWillAppear(_ animated: Bool) {
if let networkError = error {
if (networkError.code == -1009) {
return false //Offline
}
}
return true //Online
NotificationCenter.default.addObserver(self, selector: #selector(keyboardWasShown(notification:)), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillBeHidden(notification:)), name: NSNotification.Name.UIKeyboardWillHide, object: nil) }
/* 1. Extending protocol from default implementation */
extension SomeType {
// new functionality to add to SomeType goes here
}
/* 2. Adopting Multiple Protocols */
extension SomeType: SomeProtocol, AnotherProtocol {
// implementation of protocol requirements goes here
}