Skip to content

Instantly share code, notes, and snippets.

@dodikk
dodikk / AppDelegate.mm
Created June 5, 2015 14:43
iOS app start
-(BOOL)application:(UIApplication*)application
didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
UIViewController* vc = <поднять из кода/nib/storyboard>;
NSLog(@“%@“, self.window); // nil
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // создаём окно, без него - никак
self.window.rootViewController = vc; // эта фигня, вроде, во всех канонических примерах есть
[self.window addSubview: vc]; // нужен ли “ад subview” ???
@dodikk
dodikk / crash_splashboardd.txt
Last active August 29, 2015 14:22
healthjoy app start crash
Incident Identifier: FE143E3D-67F5-4160-BC3B-396A49F14D33
CrashReporter Key: 2104fbd822b6e0dc364cf9fc7100a7e0e6ce4e38
Hardware Model: iPhone7,1
Process: splashboardd [2140]
Path: /usr/libexec/splashboardd
Identifier: splashboardd
Version: ???
Code Type: ARM-64 (Native)
Parent Process: launchd [1]
@dodikk
dodikk / CastUsageExample.mm
Last active October 4, 2018 08:37
Objective-C++ cast templates
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segueId isEqualToString:@"seagueAppointmentListToMap"])
{
HLJAppointment* appointment = objc_kind_of_cast<HLJAppointment>(sender);
HLJAppointmentMapController *controller = objc_member_of_cast<HLJAppointmentMapController>(destinationController);
// property injection
controller.model = appointment;
}
@dodikk
dodikk / crash.txt
Created June 17, 2015 07:49
crash-iso-8.3
EXC_BREAKPOINT
/usr/lib/system/libsystem_platform.dylib:0 _os_lock_corruption_abort
/usr/lib/system/libsystem_platform.dylib:0 _OSSpinLockLockSlow$VARIANT$wfe
Frameworks/CFNetwork.framework/CFNetwork:0 _ZN19URLConnectionLoader21_loaderEvent_AckBytesEx
Frameworks/CFNetwork.framework/CFNetwork:0 _ZN19URLConnectionClient26_internal_captureDataArrayEv
Frameworks/CFNetwork.framework/CFNetwork:0 ___ZN27URLConnectionClient_Classic29_delegate_didReceiveDataArrayEv_block_invoke
Frameworks/CFNetwork.framework/CFNetwork:0 ___ZN27URLConnectionClient_Classic18_withDelegateAsyncEPKcU13block_pointerFvP16_CFURLConnectionPK33CFURLConnectionClientCurrent_VMaxE_block_invoke_2
Frameworks/CFNetwork.framework/CFNetwork:0 ___ZNK18QCoreSchedulingSet12performAsyncEU13block_pointerFvvE_block_invoke
/usr/lib/system/libdispatch.dylib:0 _dispatch_call_block_and_release
/usr/lib/system/libdispatch.dylib:0 _dispatch_client_callout
@dodikk
dodikk / LoadFromNib.mm
Created June 18, 2015 15:22
Subviews not loaded for xib with autolayout
NSArray* nibObjects = [[NSBundle mainBundle] loadNibNamed: @"HLJCommunicationMethodView"
owner: self
options: nil];
HLJCommunicationMethodView* createdView = objc_member_of_cast<HLJCommunicationMethodView>([nibObjects firstObject]);
result = createdView;
@dodikk
dodikk / df_24_hour_issue.mm
Created August 4, 2015 12:54
NSDateFormatter bug
NSLocale* posixLocale = [[NSLocale alloc] initWithLocaleIdentifier: @"en_US_POSIX"];
NSCalendar* gregorianCal = [[NSCalendar alloc] initWithCalendarIdentifier: NSCalendarIdentifierGregorian];
NSDateFormatter* df = [NSDateFormatter new];
{
gregorianCal.locale = posixLocale;
df.locale = posixLocale;
df.calendar = gregorianCal;
}
df.dateFormat = @"yyyy-MM-dd'T'hh:mm:ss.SSSZ";
@dodikk
dodikk / ObjcCast.hpp
Created November 21, 2015 23:19
Safe Cast templates for Objective-C
#ifndef __JFF_CAST_FUNCTIONS_H__
#define __JFF_CAST_FUNCTIONS_H__
#import <Foundation/Foundation.h>
#pragma mark -
#pragma mark NSObject casts
template < class DESTINATION >
DESTINATION* objc_kind_of_cast( id nsObject )
{

Computer science theory

  1. Что такое инвариант цикла?

  2. Что такое сложность алгоритма? O(n) нотация. O(???) для операций с NSArray, NSDictionary, запрос в БД (индексированный VS. неиндексированный)

  3. CS data structures (linked list, binary tree, array)

  4. Различия аутентификации, авторизации

@dodikk
dodikk / ReimportUnityEngineUI.cs
Created January 22, 2016 10:22
Unity bug workaround "in timestamps but is not known in assetdatabase"
using UnityEngine;
using System.Collections.Generic;
using UnityEditor;
using System.Text.RegularExpressions;
using System.IO;
using System.Text;
// http://forum.unity3d.com/threads/unityengine-ui-dll-is-in-timestamps-but-is-not-known-in-assetdatabase.274492/#post-1942214
public class ReimportUnityEngineUI
@dodikk
dodikk / sb_xib_code.txt
Last active February 1, 2016 16:10
iOS GUI tool holy war
Storyboard :
+ видна структура приложения (переходы)
+ визуально верстаешь
- частые и трудно решаемые merge conflict
- тормоза xcode когда “всё в одном файле” (сюрприз! можно иметь несколько storyboard в одном прожекте)
Xib :
+ визуально верстаешь
+ merge conflict реже
+ Нет тормозов, ибо “1 xib - 1 screen”