Skip to content

Instantly share code, notes, and snippets.

View CocoaBeans's full-sized avatar

Kevin Ross CocoaBeans

View GitHub Profile
@CocoaBeans
CocoaBeans / README.md
Created November 14, 2023 20:25 — forked from IsaacXen/README.md
(Almost) Every WWDC videos download links for aria2c.
@CocoaBeans
CocoaBeans / 4CF.c
Created July 7, 2016 04:26 — forked from daurnimator/4CF.c
Use your own main loop on OSX
#include <mach/port.h> /* mach_port_t */
#include <mach/mach.h> /* mach_port_allocate(), mach_task_self(), mach_port_insert_member() */
#include <sys/event.h> /* kqueue(), kevent64(), struct kevent64_s, EVFILT_MACHPORT, EV_SET64, EV_ADD */
#include <sys/time.h> /* struct timespec */
//#include <dispatch/private.h>
extern mach_port_t _dispatch_get_main_queue_port_4CF(void);
extern void _dispatch_main_queue_callback_4CF(void);
#include <stdio.h>
// Crashlytics have defined these so that if we use a new SDK then build then we get errors. We'll define these macros to remove any typed collections.
#ifdef CLS_GENERIC_NSARRAY
#undef CLS_GENERIC_NSARRAY
#define CLS_GENERIC_NSARRAY(type) NSArray
#endif
#ifdef CLS_GENERIC_NSDICTIONARY
#undef CLS_GENERIC_NSDICTIONARY
#define CLS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary

Architectural Questions

  • Are responsibilities well defined?
  • Are the collaborations well defined?
  • Is coupling minimized?
  • Can you identify potential duplication?
  • Are interface definitions and constraints acceptable?
  • Can modules access needed data—when needed?
NSInteger osxVersion;
if (floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_6) {
//10.6.x or earlier systems
osxVersion = 106;
NSLog(@"Mac OSX Snow Leopard");
} else if (floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_7) {
/* On a 10.7.x or earlier system */
osxVersion = 107;
NSLog(@"Mac OSX Lion");
} else if (floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_8) {
#!/bin/bash
SCRIPT_PATH="${0}"
SCRIPT_DIR=`dirname "${SCRIPT_PATH}"`
SCRIPT_DIR=`cd "${SCRIPT_DIR}"; pwd`
echo "$SCRIPT_DIR"
#!/bin/bash -x
############################################################################################################################
###
### MOGenerator.command
###
### Managed Object Generator Build Script.
### Implements generation gap codegen pattern for Core Data.
### http://rentzsch.github.com/mogenerator/
###
@CocoaBeans
CocoaBeans / set_bundle_version.sh
Created April 3, 2014 19:38
This script automatically sets the version and short version string of an Xcode project from the Git repository containing the project. To use this script in Xcode 4, add the contents to a "Run Script" build phase for your application target.
#!/bin/bash -x
# This script automatically sets the version and short version string of
# an Xcode project from the Git repository containing the project.
#
# To use this script in Xcode 4, add the contents to a "Run Script" build
# phase for your application target.
set -o errexit
set -o nounset
@CocoaBeans
CocoaBeans / git-delete-local-tags.sh
Created March 25, 2014 19:48
Delete all locate tags in a git repository and fetch the remote tags
git tag -l | xargs git tag -d
git fetch
@CocoaBeans
CocoaBeans / .gitignore
Last active December 28, 2015 01:19
Basic .gitignore
# OS X Finder
.DS_Store
# Xcode per-user config
*.mode1
*.mode1v3
*.mode2v3
*.perspective
*.perspectivev3
*.pbxuser