Skip to content

Instantly share code, notes, and snippets.

View omayib's full-sized avatar
Focusing

omayib omayib

Focusing
View GitHub Profile
@omayib
omayib / dummy-api.json
Last active September 8, 2017 01:30
This file is a dummy api response. Run it using https://github.com/typicode/json-server.
{
"users": [
{
"id": "797rtr534",
"name": "Supriyono",
"phone": "087364524354",
"token": "kjashdrfkjhaswkeruy9824hhufdskjn"
}
],
"restaurants": [
@omayib
omayib / AlumnusListActivity.java
Last active September 21, 2017 22:50
getting data directly from server
/**
* Created by omayib on 18/09/17.
*/
public class AlumnusListActivity extends Activity{
private static final String TAG = "AlumnusListActivity";
private RecyclerView mRecyclerView;
private LinearLayoutManager mLinearLayoutManager;
private RecyclerAdapter mAdapter;
private ArrayList<Person> alumnus;
{
"alumnus":[{"id":"213s2","name":"Andri Atmojo","email":"andri@yahoo.com","work":"freelance android"},
{"id":"21324","name":"Joki Widyawan","email":"joki@yahoo.com","work":"freelance web"},
{"id":"21324","name":"Eko Purnawan","email":"eko@yahoo.com","work":"Google"},
{"id":"21324","name":"Susilo Andi S","email":"susilo@yahoo.com","work":"Facebook"},
{"id":"21324","name":"Prakoso Binar","email":"binar@yahoo.com","work":"Microsoft"},
{"id":"21324","name":"Gilang Santoso","email":"gilang@yahoo.com","work":"freelance android"},
{"id":"21324","name":"Atmojo Rakoso","email":"rakoso@yahoo.com","work":"freelance ios"}
]
}
@omayib
omayib / TheRegistrationPageTests.swift
Last active October 10, 2017 02:26
the initial unit test for registration page presenter
class TheRegistrationPageTests: XCTestCase {
override func setUp() {
super.setUp()
}
override func tearDown() {
super.tearDown()
}
func testRegisterWithEmptyEmail(){
@omayib
omayib / TheRegistrationPageTests.swift
Last active October 10, 2017 02:50
Initiate the RegistrationPresenter object
class TheRegistrationPageTests: XCTestCase {
override func setUp() {
super.setUp()
}
//...
func testRegisterWithEmptyEmail(){
let expec = expectation(description: "registration with empty email")
let registrationPresenter = RegistrationPresenter(delegate: MockUIViewController1(expectation: expec))
registrationPresenter.register(email: "", password: "123456789", fullName: "michel jhon", phoneNumber: "087654325673")
@omayib
omayib / RegistrationPresenter.swift
Created October 10, 2017 02:53
create an implementation of business logic on RegistrationPresenter class.
protocol RegistrationDelegate{
func showProgress()
func hideProgress()
func registrationDidSucceed()
func registrationDidFailed(message: String)
}
class RegistrationPresenter{
var delegate: RegistrationDelegate
@omayib
omayib / ViewController.swift
Created October 10, 2017 02:56
here is a place to control the view state.
class ViewController: UIViewController {
@IBOutlet weak var emailTextField: UITextField!
@IBOutlet weak var passwordTextField: UITextField!
@IBOutlet weak var fullNameTextField: UITextField!
@IBOutlet weak var phoneNumberTextField: UITextField!
var presenter: RegistrationPresenter?
override func viewDidLoad() {
super.viewDidLoad()
@omayib
omayib / RahmayanaDeptStore.kt
Last active November 28, 2017 22:52
The real world implementation of strategy pattern in Kotlin
/**
* Created by omayib on 22/05/17.
*/
fun main(args: Array<String>){
val tShirtUbuntu = TShirt(70000,2)
val tShirtAndroid = TShirt(50000,4)
val tShirtCoder = TShirt(80000,3)
val bill = Bill()
bill.add(tShirtUbuntu)
@omayib
omayib / MainActivity.java
Last active November 30, 2017 07:50
kuliah pemrograman android untuk kasus login page
package com.example.presentasi.loginpage;
import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
@omayib
omayib / activity_main.xml
Last active December 7, 2017 06:07
a alyout for displaying the current weather (kuliah pemrograman mobil android amikom yogyakarta)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:background="#11bcff"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="id.technomotion.simpleweatherapps.MainActivity">