
Swiftæªçµéšã®å»åž«ããChatGPTã䜿ã£ãŠ30åã§iOSã¢ããªãäœã£ã話
æ ªåŒäŒç€ŸUbieããããã¯ãéçºã¹ãã·ã£ãªã¹ãã»å»åž«ã®åç¬ã§ãã
ä»åã¯ã仿³šç®ãããŠããChatGPTã䜿ã£ãŠãããåæ©çãªiOSã¢ããªãäœã£ãŠã¿ãã®ã§ãããã«ãŸãšããŠã¿ãŸãããChatGPTã®åãã¯æ¢ã«æ§ã ãªå Žæã§åãæ±ãããŠããŸãããçŸèã¯äžèŠã«ãããããšããããšã§å®éã«èªåã§è§Šã£ãŠããã£ãããšãæããããšãå ±æããããšæããŸãã
ç§èªèº«ã¯ãã«ã¹ããã¯ãã³ãã£ãŒã§å€åããŠããŸãããããã¯ã°ã©ãŠã³ãã¯å»åž«ã§ã³ãŒãã£ã³ã°ãSwiftãå
šãã®æªçµéšã§ãã
ã¡ãªã¿ã«ãèªåã®çµéšããããšããã®ãŸãŸæžãåºãããããšããæ°æã¡ãããã®ã§ããã®noteã®äœæã«ã¯äžåChatGPTã䜿ã£ãŠããŸããã
ãªãã¢ããªãäœã£ãŠã¿ãããšæã£ãã®ã
ããããããªããšã³ãžãã¢ãªãœãŒã¹ãè±å¯ãªç°å¢ã®äžãèªåèªèº«ã§ã¢ããªãäœã£ãŠã¿ãããšæã£ãã®ãããåçŽãªèå³ã§ãããšèšã£ãŠããŸãã°ãããŸã§ãããããŸãããã以åããæããŠããUnmet Medical Needsã®Solutionã®äžã€ã«ãå蚺xAIãã倧ããªåœ¹å²ãæãããšèããŠããããã§ããåæ§ã«ã身äœèšºå¯xAIãã«ã倧ããªããã³ã·ã£ã«ãæããŠããŠããã®howã®äžã€ã«ã¢ããªéçºãããã®ã§ã¯ããšèããŠããŸããã
ãšã¯ãããäœãããæ°æã¡ããã£ãŠããXcodeã®ç»é¢ãéããšããã§ãã€ãçµãã£ãŠããŸã£ãã®ã§ãä»åã¯ChatGPTå çã®åããåãããŠäœã£ãŠã¿ãããšæããŸãããïŒåæ¥ã¯ããããšæã£ãã®ã§ãããããã£ãš30åã§ã§ããŠããŸã£ãã®ã¯å®å šã«äºæ³å€ã®ãµãã©ã€ãºã§ãïŒ
ããã²ãšã€ã®ãã£ãã
æè¿ããŸããŸyoutubeã§ChatGPTã®å¯Ÿè«ãèŠãŠããŠãæ°ã«ãªã£ãpower wordããããŸããã
ä»ãæããšããµã€ãã£ã³ã°ãªããã°ã©ãã³ã°èšèªã¯ãè±èªã
è±èªã§promptã䜿ãããªãããšãã§ããã°ãäœã§ãäœããããã«ãªãïŒãªã£ãŠããïŒãšããäºå®ã«è¡æãåããŸãããèªç¶èšèªã§ããã°ã©ãã³ã°ãã§ããäžçããããªäžçãæ¥ããšã¯ãæ°ã¶æåã®èªåã«ã¯æ³åããã§ããŸããã§ããã
éçºç°å¢ã®äœãæ¹ããæããŠãããã
ãŸãã¯éçºç°å¢ããã§ãããµããããšãXcodeã®ã€ã³ã¹ããŒã«ã¯å¿ èŠã ãªãããšããç¥èã¯ãããŸãããããŸãèããŠã¿ãŸãã


generalãªpromptã ã£ãã®ã§ãçµæ§generalãªåçãè¿ã£ãŠããŠããŸãããæåŸã«ãGood luck!ããšæ°ã®å©ããäžèšãããŸãã§ä»ããŠããŸãã
ããå°ãå
·äœçãªpromptã«ãããš

æšå¥šç°å¢ãããå ·äœã®ã€ã³ã¹ããŒã«æ¹æ³ããããžã§ã¯ãã®åãæ¹çãstep-by-stepã§èšèŒãããŠãããããã¥ã¢ã«ãããã§ãã
ãããªã¢ããªãäœã£ãŠã¿ãã
åœåã¯"Hello World"ã ã衚瀺ã§ããã°è¯ãããªãšæã£ãã®ã§ãããchatGPTå çãããã®ã§ãããå°ãã¹ãã¬ããããŠä»¥äžãç®æšã«ããããšæããŸãã
ãã¿ã³ãã¯ãªãã¯ãããš"Hello World"ãšUbieã®ããŽãåºçŸãã
Ubieã®ç»åãã¯ãªãã¯ãããšãMapãåºçŸãã
Mapã®ããã©ã«ãã¯Ubieæ¬ç€Ÿã®æåšå°ã«ãã
Swiftå®å šåå¿è ãªã®ã§ããã®ãããã§èš±ããŠãã ãããç»åãMapãæ±ãã®ã§ãããªãã®è² è·ã¯ãããããã§ãã
CodeãçæããŠããã
æ©écodeãäœã£ãŠããããŸãã
ãŸãã¯ããã¿ã³ãæŒãããããã±ããã®çµµæåä»ãã§"Hello World"ãåºåãããã¢ããªãäœã£ãŠããããŸãã

ãããããäžå¯§ã«codeã®å 容ã«ã€ããŠã説æããŠãããŸãã

å®éã«Xcodeã«ã³ããããŠãPreviewãããšïŒ

ãªãããã¿ã³ã®è²ãå€ãããããšããããšã§GPTå çã«è³ªåãããš


"Hello World"ãåºçŸããæã«"Show Text"ãã¿ã³ãæ®ã£ãŠããã®ãå€ãªã®ã§ããã¿ã³ãæ¶ããŠãããããã«ãé¡ããããšïŒ

次ã«ã"Hello World"ã®äžã«Ubieã®ããŽç»åã远å ããããšæã£ãã®ã§ãChatGPTãšæ°åããåãããŠãããŸãç»åã衚瀺ã§ããŸããã§ããã
ãªããç»åã衚瀺ã§ããªãã®ã§ããïŒãšãã質åãæãããš

ã©ããã2.ã®ãã¡ã€ã«ã®æ¡åŒµåã®åé¡ãåã£ãããã§ããUbie.svgã§ä¿åããŠããã€ããããUbie.pngã ã£ãã®ã§ããã®ãšããã«ä¿®æ£ããŸãã
次ã«"Show Text"ãã¿ã³ã®ããã¹ãã"Click and see what happens"ã«å€æŽããããã«æç€ºãããš

ãããæ £ããŠããã ããïŒããšèšããã°ããã«ã倿Žãå¿ èŠãªäžéšã ãæç²ããŠæããŠãããŸãããã³ããéçšããã§ããªãèªåã¯ããå šéšã®ã³ãŒããèŠããŠããšãé¡ããããšãã¡ãããšè¿ããŠãããŸãã

ä»åºŠã¯XcodeåŽã§ãçŽæ¥"Hello World"ã®ããã¹ããblackã«å€æŽããŠã¿ãŸãããäžéšcodeã倿ŽããããšãGPTã«å ±åããä»åŸã¯ãã®codeãbaseã«ããŠã¢ã·ã¹ãããããã«æç€ºããŸãã

å ±åãããšãèªåã倿Žããcodeã«å¯ŸããŠissueãããããšãæããŠãããŸãã
æåŸã«ãmapã®è¡šç€ºãããã©ã«ã衚瀺ã®äœæèšå®ãªã©ãã¹ã ãŒãºã«ã§ããŸãããæçµçã«ã¯ä»¥äžã®éãã«ãªããŸããïŒ
import SwiftUI
import MapKit
struct ContentView: View {
@State var showText = false
@State var showMap = false
var body: some View {
VStack {
Spacer()
if showText {
Text("ð Hello World! ð")
.font(.largeTitle)
.foregroundColor(.black)
Image("Ubie")
.resizable()
.scaledToFit()
.frame(width: 100, height: 100)
.onTapGesture {
showMap.toggle()
}
.sheet(isPresented: $showMap, content: {
MapView(address: "ã103-0022 æ±äº¬éœäžå€®åºæ¥æ¬æ©å®€çºïŒäžç®ïŒâïŒ çŠå³¶ãã« 6é")
})
Text("Click the Ubie logo and see what happens")
.font(.headline)
.foregroundColor(.gray)
} else {
Button(action: {
showText.toggle()
}) {
Text("Click and see what happens")
.font(.title)
.fontWeight(.bold)
.foregroundColor(.white)
.padding()
.background(Color.black)
.cornerRadius(10)
}
.padding(.top, 100)
}
Spacer()
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
struct MapView: UIViewRepresentable {
var address: String
func makeUIView(context: Context) -> MKMapView {
MKMapView(frame: .zero)
}
func updateUIView(_ uiView: MKMapView, context: Context) {
let geoCoder = CLGeocoder()
geoCoder.geocodeAddressString(address) { (placemarks, error) in
if let error = error {
print(error.localizedDescription)
return
}
guard let placemarks = placemarks,
let location = placemarks.first?.location else { return }
let annotation = MKPointAnnotation()
annotation.coordinate = location.coordinate
uiView.addAnnotation(annotation)
uiView.centerCoordinate = annotation.coordinate
let region = MKCoordinateRegion(center: annotation.coordinate,
span: MKCoordinateSpan(latitudeDelta: 0.02, longitudeDelta: 0.02))
uiView.setRegion(region, animated: true)
}
}
}ã¢ããªå®æ
Swiftæªçµéšè ãå ã30åã§ããã¿ã³ãç»åãMapã®èŠçŽ ãå«ãã ã¢ããªãäœãããšãã§ããŸãããïŒå®éã«åããŠããæ§åã¯åç»ãã¡ã€ã«ã埡芧ãã ãããïŒ

å®éã«GPTãšããåãããŠæããããš
"ä»ãæããšããµã€ãã£ã³ã°ãªããã°ã©ãã³ã°èšèªã¯ãè±èªã"
ãšããèšèéããèªç¶èšèªã®ã³ãã¥ãã±ãŒã·ã§ã³ããŒã¹ã§codeãã§ããŠããŸã£ãããšã«éäžã®æãçŠãããŸããããããããã®ããåãã¯è³ã£ãŠã¹ã ãŒãºã§ã質åã®æèãããåå¿è
åãã®åçããçšæããŠãããŠããããã§ãããChatGPTã®ããåãã§æ°ã¥ããã³ãã¯ïŒ
æåã«å€§æ ãäœã£ãŠãããã现ããèŠä»¶ãéœåºŠæç€ºãã
æã éšåçãªcodeããæããŠãããªããããå šéšã®codeãæããŠããšãé¡ãããã°æããŠããã
ããŸãè¡ããªãã£ãæã¯ãã¡ãããšåããŠããªããããšçãããšãå¥ã®codeãæããŠããã
现ããèŠä»¶ã倿Žããã¬ãã¥ãŒãç¹°ãè¿ããŠãããšãcodeã®å·®åããåŸããããã®ã®çµæãéœåºŠèŠèªããããšãã§ããã®ã§ãä»ãŸã§ãšéãåŠç¿äœéšãã§ã§ããæ°ãããŸããïŒä»ãŸã§ã¯æç§æžã§codeã®åºæ¬ãææ³çãåŠã¶æã§èºããŠããèªåãããããšãããæ°é®®ãªäœéšã§ããïŒ
å»åŠæè²ã«ãããŠããäœç³»ç«ã£ãæç§æžçåŠç¿ã ãã§ãªããããå®è·µçã»èšåºçãªçäŸããŒã¹ã®åŠç¿ã®äœµçšãéèŠãšãããŠããŸãããã®ChatGPTãšã®ããåãã®äœéšã¯ãå»åŠæè²ã§èšãåŸè
ã«è¿ãæèŠã§ããã€ãŸããOn the Job Training(OJT)ããç¿ãããæ
£ããããã«è¿ãã®ãããããŸããã
ãã¡ãããOJTã ããè¯ãããã§ã¯ãªããäœç³»çãªåŠç¿ãšçµã¿åãããããšã§ãã®æè²ç䟡å€ãæå€§åã§ããããšç§ã¯èããŸãã
ä»åã®äœéšãéããŠãä»ãŸã§æ°åãæ²žããªãã£ããææ³ããŒãããåŠãã§ã¿ããããšããæ¬²æ±ãé«ãŸã£ãŠããŸããããã¯ãšãŠãäžæè°ãªæèŠã§ãã
ããŠã次ã¯ïŒ
ä»åã¯å
ã30åã®ïŒãšãŠãæ¿å¯ãªïŒäœéšãã·ã§ã¢ãããŠããããŸããããšã¯ãã30åã®äœéšã§ããŸã ãŸã ChatGPTã®è¡šé¢ã®è¡šé¢ããèŠããŠããªãäºã¯èšãããããªã§ãã
ChatGPTãšã®ã¢ããªéçºã®å¯Ÿè©±ã¯ãããããç¶ããŠãããããšæããŸãããæè§ãªã®ã§ãå°ãé«ãç®æšãèšå®ããããšæããŸããè³ç¥çµå
ç§å»ãšããŠå±åšèšºæã«äœ¿ãããããªã¢ããªãäœã£ãŠã¿ããããšããæ°æã¡ã¯ä»¥åãããã£ãã®ã§ããã®ãããªéçºãæ¬åœã«ã§ããã®ããã£ã¬ã³ãžããŠã¿ãããšæããŸãããã®éçšããŸãnoteã§çããã«å
±æã§ããã°ãšæããŸãã