profile
Goal, Plan, Execute.
태그 목록
전체보기 (305)swift(42)Xcode(26)UIkit(26)Design Pattern(23)review(18)refactoring(16)retrospection(16)OOP(14)concurrency(14)CLEAN CODE(14)Clean Coder(14)design patterns(13)Object Oriented Programming(12)functional programming(12)Estimating(11)agile(11)planning(10)Behavioral Patterns(9)Thread(9)class(8)Map(8)Object Oriented Design(8)Structural Patterns(7)Java(7)frame(6)UITableView(6)async(6)Monad(6)interface(5)inheritance(5)framework(5)TDD(5)Combine(5)Parallelism(5)Bitcoin(5)oo(5)project(5)Creational Patterns(5)flatmap(5)snippets(4)kvo(4)await(4)Generic(4)Builder(4)GCD(4)public key(4)Polymorphism(4)rxswift(4)bundle(4)Proxy(4)appStore(4)Subscriber(4)unit test(4)library(4)protocol(4)optional(4)Grand Central Dispatch(4)KVC(4)MVVM(4)coupling(4)publisher(4)serial queue(3)Notification Center(3)Chain of Responsibility(3)dependency injection(3)dll(3)static(3)Singleton(3)@Target(3)operation(3)Factory Method(3)concurrent programming(3)signature(3)Performance(3)struct(3)layout(3)constant(3)index out of range(3)actor(3)Unified Modeling Language(3)ECDSA(3)MVC(3)Test Driven Development(3)NAMING(3)Adapter(3)transition(3)Functor(3)DIP(3)expression(3)Storyboard(3)Serialization(3)mac(3)exception(3)RunLoop(3)OperationQueue(3)Blocking(3)non blocking(3)Space(3)Foundation(3)task(3)app thinning(3)uml(3)binary(3)operator(3)weak(2)Scheme(2)armv7(2)VoiceOver(2)dependency(2)SRP(2)access control(2)png(2)Quality of Service(2)associatedtype(2)base64(2)error(2)logger(2)log(2)asset(2)executables(2)abstraction(2)error handling(2)public(2)single responsibility principle(2)ContentInset(2)multi thread(2)String(2)switch(2)ISP(2)https(2)cpu(2)TLS(2)test(2)Enumeration(2)dictionary(2)url(2)trouble shooting(2)http(2)QoS(2)final(2)try(2)Implementation(2)set(2)serial(2)open closed principle(2)timer(2)object(2)Automatic Reference Counting(2)API Design Guidelines(2)priority(2)TaskGroup(2)Dynamic Colors(2)tableview(2)image(2)DispatchQueue(2)main thread(2)dark-mode(2)MVP(2)header(2)Prototype(2)KeyPath(2)layoutSubviews(2)continuation(2)UIlabel(2)ocp(2)override(2)ARM(2)automation(2)theme(2)Key-Value Coding(2)Index(2)animation(2)Function Pointer(2)blockchain(2)SOLID(2)CollectionView(2)CocoaPods(2)iterator(2)build configuration(2)intel(2)event loop(2)Guidelines(2)lock(2)testing(2)Apple Official Documents(2)reactive programming(2)inset(2)merge(2)WHERE(2)UIImage(2)AutoLayout(2)Request-Driven(2)Finite Field(2)Class Diagram(2)Defer(2)compactMap(2)subscript(2)accessibility(2)bounds(2)safe(2)Dead Lock(2)key value observing(2)interface segregation principle(2)Observer(2)executable(2)composition(2)Dependency Inversion Principle(2)unowned(2)lift(2)python(2)Two-phase initialization(2)concurrent(2)alfred(2)UITraitCollection(2)indices(2)Cohesion(2)integer(2)Group(2)Byte Ordering(2)build(2)multiple inheritance(2)mutual exclusion(2)cancellable(2)Cryptography(2)structured concurrency(2)Module(2)crash(2)presentation(2)private key(2)<sec:>(2)blur(2)event driven(2)extension(2)architecture(2)Reference Type(2)Semaphore(2)inherence(2)JPG(2)sequence diagram(2)ci(2)git(2)reduce(2)ARC(2)async let(2)private(2)UIControl(2)Value Type(2)Fatal Error(2)Retropection(2)arm64(2)Presentation Context(1)ABI Stability(1)Cache(1)Hash160(1)finally(1)Turing Incompleteness(1)kd-tree(1)Anomymous Function(1)MRC(1)OutOfIndex(1)hugging property(1)Frame-based Layout(1)address(1)EPSG(1)10-200 Rule(1)indexPath(1)Code Smell(1)RxCocoa(1)Turing Completeness(1)ASCII(1)x86_64(1)estimation(1)Pair Programming(1)Constraint(1)security(1)url scheme(1)Size class(1)coordinate(1)PresentedViewController(1)EUC-KR(1)System Test(1)InsetBy(1)Transport Layer Security(1)equalCentering(1)addObserver(1)arguments(1)truncatedTail(1)dependency manager(1)WIF(1)UIRequiredDeviceCapabilities(1)operation queue(1)Segue(1)Alpha Test(1)vector(1)Convenience initializer(1)AppDelegate(1)float(1)sodll(1)resolution(1)fill(1)early binding(1)Change Function Declaration(1)Timer Tolerance(1)NSLock(1)Auto Layout(1)ad hoc(1)Actor isolation(1)CALayer(1)Bound Resources(1)debounce(1)Deep Link(1)URLSessionConfiguration(1)Smell(1)NSAttributedString(1)dynamic linker(1)maintenance(1)spacing(1)high order function(1)retina(1)Block Operation(1)Designated initializer(1)Right-BICEP(1)Beta Test(1)project.xcworkspace(1)StoryPoint(1)Message(1)draw(1)shell script(1)POJO(1)Sync(1)decorator(1)abstract class(1)for ~ in(1)Objective-C(1)Threads(1)Live lock(1)der(1)URN(1)reentrancy(1)Spread(1)URLSessionWebSocketTask(1)protobuf(1)parameter(1)Thread.sleep()(1)Operation Life Cycle(1)not working(1)Multi Instances(1)while(1)Wallet Import Format(1)nil(1)Dynamic Link(One Link)(1)network(1)branch(1)presentingViewController(1)rawValue(1)Data Transfer Object(1)NSNotFound(1)XML(1)Diffable DataSource(1)setNeedsUpdateConstraints(1)trimming(1)Pub-sub(1)Turing Machine(1)Higher-order Function(1)Repeating Timer(1)R Tree(1)UIView(1)print(1)inout(1)procedure(1)team(1)Datum(1)dev-environment(1)Background Thread(1)Double(1)UI(1)Target/Action(1)modalPresentationStyle(1)Nine patch(1)responder chain(1)socket(1)viewDidUnload(1)collaboration(1)optional chaining(1)method(1)alwaysTemplate(1)Bundle Structure(1)EQUAL(1)polygon(1)Property Injection(1)Out Of Index(1)URLSessionUploadTask(1)typeof(1)StackView(1)user story(1)unicode(1)query(1)compress resistance property(1)App Transport Security(1)Behavior Pattern(1)Custom Transition(1)action(1)deploy(1)UIRectCorner(1)Feature Envy(1)modulemap(1)Rule of Delegation(1)control-flow(1)test code(1)starvation(1)any(1)Verifying(1)algebra(1)Elapsed Time(1)ScrollToItem(1)json(1)NSTextAttachment(1)scroll(1)Mach-O(1)let(1)var(1)nested class(1)Universal Binary(1)URLSession(1)typealias(1)NSLog(1)implicitly unwrapped optional(1)Thread Safety(1)UIVibrancyEffect(1)format(1)Prime(1)Productibility(1)Property Wrappers(1)64bit(1)Hugging priority(1)Abstract Data Type(1)facade(1)ViewController Life Cycle(1)Materials(1)fillProportionally(1)fatal(1)Monterey(1)Producer/Consumer Problem(1)filter(1)DispatchWorkItem(1)Nil-coalescing Operator(1)RxRelay(1)QUADTREE(1)AsyncSequence(1)Sub directory(1)debugging(1)Deadlock(1)template method(1)application(1)foreach(1)Carthage(1)cocontents.xcworkspacedata(1)Core Graphics(1)waterfall(1)RIBs(1)late binding(1)UITouch(1)Manual Reference Counting(1)UIApplication(1)optional unwrapping(1)Collection(1)Update Cycle(1)strip()(1)Memory Warning(1)main actor(1)Custom Operation(1)viewDidLoad(1)Intrinsic Content Size(1)Static Function(1)Service Locator Pattern(1)subclassing(1)clang(1)homebrew(1)UIImageView(1)Module Stability(1)Create File(1)app slicing(1)iphone(1)memory optimization(1)Professionalism(1)URLSessionDownloadTask(1)di(1)concurrent queue(1)visitor(1)Simple(1)ContentSize(1)Adapter Pattern(1)userInterfaceLevel(1)DCT(1)UINavigationController(1)URLSessionTask(1)Little Endian(1)themes(1)delay(1)Acceptance Testing(1)cd(1)continuous integration(1)UIScrollView(1)State(1)ATS(1)응답체인(1)metatype(1)Base58(1)navigation(1)userInterfaceIdiom(1)Publisher/Subscriber Pattern(1)persistence(1)internal(1)Pressure(1)compactMapValues(1)Initialization Injection(1)test double(1)reduce(into::)(1)Abstract Factory(1)encoding(1)comments(1)Vibrancy(1)Enum(1)setNeedsLayout(1)Streaming API(1)Atomicity(1)app life cycle(1)update(1)capture list(1)background(1)GC(1)Strategy(1)class property(1)LSP(1)sugar API(1)Edge case(1)Tint color(1)button(1)viewDidLayoutSubviews(1)updateConstraintsIfNeeded(1)actor prioritization(1)secp256k1(1)UIPresentationController(1)pure function(1)Alan Kay(1)Swift Package Manager(1)Binary Compatibility(1)Dispatch Precondition(1)overflow(1)border(1)Ad-Hoc Deployment(1)Pub/Sub Pattern(1)Main RunLoop(1)percent encoding(1)bottom(1)static method(1)LINE(1)DSO(1).a(1)xcshareddata(1)Mobile Deep Link(1)CACornerMask(1)Inline Variable(1)type(1)logging(1)Pop(1)NSIntergerMax(1)block(1)Universal App(1)segueway(1)showhide(1)Liskov Subsitution Principle(1)XCFramework(1)memory(1)binding(1)Story Points(1)RenderingMode(1)spaghetti code(1)work flow(1)Commuication(1)console(1)dismiss(1)UnfoldSequence(1)estimatedRowHeight(1)equalSpacing(1)LLVM(1)dsyms(1)UIViewController(1)Method Injection(1)Custom Reorder(1)opacity(1)@autoclosure(1)Mentoring(1)fileprivate(1)cell resizing(1)monitoring(1)webhook(1)의존성 관리도구(1)mock(1)do-catch(1)Markdown(1)Shortcuts(1)spacial index(1)http method(1)notification(1)shallow copy(1)userInterfaceStyle(1)array(1)Completion(1)getter(1)setter(1)setNeedsDisplay(1)Concurrenct Programming(1)type constraint(1)Result(1)Flat(1)copy-on-write(1)modeling(1)tryMap(1)display(1)Delegation(1)pull(1)initializer(1)Hashable(1)Configuration(1)Procedural Data Abstraction(1)optional binding(1)Serial Dispatch Queue(1)fillEqually(1).xcuserdata(1)Down Sampling(1)lazy(1)mediator(1)Bad Code(1)parameters(1)Extract Variable(1)Task Tree(1)Decryption(1)toggle(1)class function(1)Planning Poker(1)@escaping(1)Type Constraints(1)cookie(1)actor reentrancy(1)Bridge(1)computed property(1)force unwrapping(1)Elliptic Curve(1)extreme programming(1)Extract Function(1)static library(1)CGContext(1)wrapper(1)UITabBarController(1)separator(1)code(1)stored property(1)yield(1)life cycle(1)repeat-while(1)debug(1)lldb(1)Apple(1)@rpath(1)Deferred Deep Link(1)autoreleasepool(1)userInteractionEnabled(1)tintColor(1)currying(1)Implement Pattern(1)Expectation(1)Ideal Time(1).xcodeproj(1)functions(1)UIResponder(1)cooperative thread pool(1)Raster(1)newline(1)NotificationCenter(1)Bech32(1)Compress resistance prioirity(1)Checklist(1)Compressed SEC(1)CGRect(1)maskedcorners(1)completion Handler(1)MS949(1)Image Stretching(1)if(1)hash(1)synchronization(1)race condition(1)protocol oriented programming(1)product(1)alignment(1)SDK(1)csv(1)Subproject(1)static property(1)reorder(1)Main Bundle(1)grid(1)State Machine(1)data race(1)devops(1)Schnorr signature(1)cornerradius(1)linear(1)hit test(1)Linear Transformation(1)Segwit(1)Instance Property(1)data structure(1)deep copy(1)closure(1)UIScreen(1)Creational Pattern(1)utf 8(1)trim()(1)Craftsmapship(1)Deinitializer(1)switchToLatest(1)SYSTEM(1)Binary Expansion(1)financial(1)LazySequence(1)Spring(1)Thread Explosion(1)AppStore Deployment(1)tuple(1)HeaderView(1)numberOfLines(1)capture(1)dynamic library(1)Inversion Of Control(1)required initializer(1)range(1)customer(1)URL encoding(1)Masking(1)DTO(1)projection(1)rowHeight(1)authentication(1)Operation Priority(1)testflight(1)On Demand Resources(1)UIBlurEffect(1)Task.sleep(1)GIS(1)mistake(1)apply(1)didSet(1)unittest(1)Apple Certificate(1)goto(1)Ideal Days(1).swiftmodule(1)deserialization(1)Dispatch Semaphore(1)AsyncThrowingStream(1)Main Run Loop(1)instantiateViewController(1)Flexibility(1)Composite(1)Strong Reference Cycle(1)combineLastest(1)onTermination(1)AnyCancellable(1)memory release(1)XCTestExpectation(1)thread-safe(1)observability(1)layoutIfNeeded(1)encapsulation(1)CPI(1)GOF(1)release(1)Direct Deep Link(1)flatLift(1)Checked Exception(1)NSObject(1)argument(1)function(1)Overload(1)NSBundle(1)Either(1)Event(1)Big Endian(1)project.pbxproj(1)CP949(1)UIGraphicsImageRenderContext(1)fp(1)dispatch queue(1)CISC(1)Memento(1)DispatchSource(1)App Link(1)UIEvent(1)computer(1)variable(1)assert(1)CPU Architecture(1)Fake(1)XCTest(1)Actor Model(1)Lazy Evaulation(1)Work Process(1).swiftmoduleinterface(1)PDA(1)stub(1)partial application(1)package(1)RISC(1)Workspace(1)archive(1)compiler(1)invalidateIntrinsicContenstSize(1)figma(1)ContentOffset(1)function composition(1)Foreground(1)updateContraints(1)fast-forward(1)integration test(1)distribution(1)compact(1)VIPER(1)scale(1)open(1)object oriented(1)static variable(1)Nonrepeating Timer(1)Expander Control(1)shadow(1)UIGraphicsImageRenderer(1)NSParagraphStyle(1)URI(1)IoC(1)DispatchGroup(1)anyObject(1)command(1)POST(1)Type Property(1)32bit(1)Enterprise Deployment(1)Subject(1)interpreter(1)Digital Signature(1)AsyncStream(1)Property Observers(1)workflow(1)Flyweight(1)field(1)Regular(1)INSERT(1)static linker(1)SPM(1)URLSessionStreamTask(1)XCTestCase(1)UIVisualEffectView(1)inspector(1)Virtual method(1)sendable(1)ADT(1)corner(1)catch(1)modular(1)dsym(1)Dispatch Barrier(1)Context Switching(1)bitcode(1)Unchecked Exception(1)Folder reference(1)MultiTasking(1)stack(1)scrum(1)deployment(1).app(1)encryption(1)garbage collector(1)compactMapValue(1)Linker(1)didReceiveMemoryWarning(1)ANSI(1)UIGraphicsRendeerContext(1)unit(1)process(1)Run Loop(1)URLSessionDataTask(1)boundary(1)iteration(1)Fat binary(1)type alias(1)willSet(1)URLRequest(1)heap(1)zeplin(1)URLComponent(1)PRESENT(1)Conventions(1)Build Active Architectures Only(1)Binary Framework(1)Emergence(1)actor hopping(1)Universal Link(1)snapshot(1)Detached Task(1)First-class Function(1)inline function(1)Provisioning profile(1)axis(1)
post-thumbnail

23.08

23년 08월을 회고해본다.

2023년 8월 30일
·
1개의 댓글
·
post-thumbnail

How to use Monad

어떻게 Monad를 사용해야 하는가?

2023년 8월 17일
·
1개의 댓글
·
post-thumbnail

Why Monad? Part. 02

그래서 Monad를 왜 사용하는가?

2023년 8월 17일
·
0개의 댓글
·
post-thumbnail

Why Monad? Part. 01

그래서 Monad를 왜 사용하는가?

2023년 8월 17일
·
0개의 댓글
·
post-thumbnail

Monad In Programming

Monad는 어떻게 정의할 수 있을까?

2023년 8월 17일
·
0개의 댓글
·
post-thumbnail

High Dimensional lift

고차원 Lift에 대해 알아보자. (map)

2023년 8월 17일
·
0개의 댓글
·
post-thumbnail

Functor In Programming

Functor란 무엇인가?

2023년 8월 17일
·
0개의 댓글
·
post-thumbnail

23.07

23년 07월을 회고해본다.

2023년 8월 2일
·
1개의 댓글
·
post-thumbnail

Change Function Declaration

Change Function Declaration, 함수 선언 바꾸기에 대해 알아보자.

2023년 7월 24일
·
1개의 댓글
·
post-thumbnail

Inline Variable

Inline Variable, 변수 인라인하기를 알아보자.

2023년 7월 24일
·
1개의 댓글
·
post-thumbnail

Extract Variable

Extract Variable, 변수 추출하기를 알아보자.

2023년 7월 24일
·
1개의 댓글
·
post-thumbnail

Inline Function

Inline Function, 함수 인라인하기를 알아보자.

2023년 7월 24일
·
1개의 댓글
·
post-thumbnail

Extract Function

Extract Function, 함수 추출하기에 대해 알아보자.

2023년 7월 24일
·
1개의 댓글
·
post-thumbnail

Building Tests

리팩토링에 있어 테스트 코드는 왜 중요할까?

2023년 7월 24일
·
1개의 댓글
·
post-thumbnail

Principles in Refactoring

이제 리팩터링 전반에 적용되는 원칙 몇 가지를 살펴보자.

2023년 7월 11일
·
0개의 댓글
·
post-thumbnail

Bad Smells in Code

냄새나면 당장 갈아라.

2023년 7월 7일
·
0개의 댓글
·
post-thumbnail

23.06

23년 06월을 회고해본다.

2023년 7월 3일
·
0개의 댓글
·
post-thumbnail

Refactoring, a First Example Part. 07

마지막으로 변경된 코드를 보며 생각해보자.

2023년 6월 29일
·
0개의 댓글
·
post-thumbnail

Refactoring, a First Example Part. 06

만약에 연극 종류가 추가되면 어떻게 될까? 이제 다형성으로 변경할 시점이다.

2023년 6월 29일
·
0개의 댓글
·
post-thumbnail

Refactoring, a First Example Part. 05

우리가 하고 싶었던 HTML을 만들기 위해 계산 단계와 포맷팅 단계를 분리하는 작업을 진행해보자.

2023년 6월 29일
·
0개의 댓글
·