สิ่งที่ตรงกันข้ามกับสิ่งที่เป็นนามธรรม? [ปิด]


19

ตามที่ฉันเข้าใจแล้วสิ่งที่เป็นนามธรรมเป็นคำที่เราใช้เมื่อมีความหมายมากกว่านั้นถูกสร้างขึ้นจากสิ่งที่เรียบง่ายขึ้นโดยไม่เปลี่ยนแปลง มันมาจากคำกริยาละติน abstrahere (เพื่อ 'ดึง') ตัวอย่างเช่นข้อความเป็นเพียงหนึ่งนามธรรมของข้อมูลไบนารี - เช่นเดียวกับบิตแมป ดังนั้นในคอมพิวเตอร์ข้อความและบิตแมปที่มีอยู่ด้านบนของ (ถูกนำมาใช้ในแง่ของ) ข้อมูลไบนารี

คำถามของฉันคือคำตรงข้ามคืออะไร ถ้าฉันต้องการทราบสิ่งพื้นฐานเพิ่มเติมที่เป็นไปได้ที่บิตแมปสามารถนำไปใช้ในแง่อื่นนอกเหนือจากข้อมูลไบนารี - สิ่งต่าง ๆ เช่นกระเบื้องสำหรับโมเสกหรือแพทช์ผ้าสำหรับผ้าห่มเย็บปะติดปะต่อกัน - ฉันจะขออะไร มีคำสำหรับสิ่งนั้นหรือไม่?

สิ่งที่เป็นนามธรรมมีนัยยะของการวางนัยทั่วไปและกระบวนการตรงกันข้ามของความเชี่ยวชาญ IDK ช่วยได้หรือไม่


7
ภาษาอังกฤษอาจเหมาะสมกว่านี้
PéterTörök

3
ในบางกรณีความเรียบง่าย ฉันได้เห็น abstractions ที่น่ากลัวมากมายที่ทำให้สิ่งต่าง ๆ มีความซับซ้อน;
วิลเลียม

ฉันคิดว่าแนวคิดนี้ไม่มีคำที่น่าพอใจ ให้เหรียญหนึ่งเดียว: "de-abstraction"
Conor Cosnett

คำตอบ:


8

การดำเนินงาน

นามธรรมเป็นคำสั้น ๆ เป็นกระบวนการทางจิตของการได้รับแบบจำลอง (ลดลง) ของสิ่งที่โลกแห่งความจริงและ "กระชับ" เป็นแนวคิดหรือความคิด

ดังนั้นสิ่งที่ตรงกันข้ามคือการใช้แนวคิดหรือความคิดและเปลี่ยนมันให้กลายเป็นโลกแห่งความจริง ;-)


2
ฉันไม่รู้ว่าถ้าฉันจะเรียกสิ่งนี้ว่าสิ่งที่ตรงกันข้ามกับแนวคิดที่สมบูรณ์ เช่นเดียวกับในทุกครั้งที่คุณมีสิ่งที่เป็นนามธรรมในการเขียนโปรแกรมคุณยังมีการใช้งานที่สิ่งที่เป็นนามธรรมซ่อนอยู่ อย่างไรก็ตามนั่นเป็นคำถามที่ถาม
jhocking

@ jhocking เบรกและคันเร่งของรถเป็นสิ่งที่ตรงกันข้าม ไชโย
umlcat

"การสำแดง" ของสิ่งที่ไม่มีตัวตนที่เป็นนามธรรมจาก Platonic realm ถึงความเป็นจริงทางกายภาพ (เพียง)
Conor Cosnett

41

มักจะ

concretization - ในขณะที่คลาส c ++ คอนกรีต

และในบางกรณี:

ความเชี่ยวชาญ - เช่นเดียวกับในความเชี่ยวชาญแม่แบบ C ++

เพิ่ม 12 มิถุนายน 2012 : นี่เป็นคำที่น่ารัก:

Reification - ในหลายภาษาโปรแกรม


6
ในขณะที่ฉันไม่เห็นด้วยกับการใช้ 'concretize' - มันเป็นคำที่ค่อนข้างยุ่งยาก ... 'การตัดสินใจ' จะไม่ดีกว่าเหรอ? thefreedictionary.com/concretion
HorusKol

1
นิ่วเพื่อตรวจสอบว่า
Zachary Yates

มันตั้งอยู่ในคอนกรีตหลังจากการตัดสินใจหรือไม่? เพียงแค่ถาม :-)
JensG

5

ในบริบทของการเขียนโปรแกรมของมันลดลง

reductionism

ดังที่: "ฉันได้ลดปัญหาลงไปเป็นคำที่ง่ายที่สุด"


4

"คอนกรีต" เป็นสิ่งที่ตรงกันข้ามกับ "นามธรรม" ดังนั้นสิ่งที่ตรงกันข้ามของ "นามธรรม" จึงเป็น "คอนกรีต" อย่างไรก็ตามคุณมักจะพูดถึงสิ่งที่เป็นนามธรรมและไม่ค่อยคิดว่ามันตรงกันข้าม


3

เริ่มจากศูนย์เลย ประการแรกสิ่งที่เป็นนามธรรมแน่นอนคืออะไร?

ปัญหา / แรงจูงใจ

เมื่อคุณโปรแกรมคุณมักจะต้องแก้ปัญหาที่มีรายละเอียดเฉพาะอย่างมาก

แรงจูงใจหลักในการทำสิ่งที่เป็นนามธรรมคือเมื่อคุณอาจพบว่าตัวเองอยู่ในสถานการณ์ที่โปรแกรมของคุณจัดการกับปัญหาทั้งหมดเป็นหน่วยเดียวโดยมีลักษณะเล็ก ๆ น้อย ๆ ที่ไม่ต่อเนื่องจำนวนมากที่ต้องการความสนใจและความเข้าใจ ปัญหาตรงนี้คือมันยากสำหรับมนุษย์ที่จะจัดการกับข้อมูลจำนวนมหาศาลในครั้งเดียว

การแก้ปัญหา: สิ่งที่เป็นนามธรรม

เพื่อให้คุณจะสามารถที่จะเข้าใจสิ่งที่คุณต้องการเพื่อที่จะใช้ความคิดของคุณ , คุณสามารถแยกรายละเอียดการแก้ปัญหาการเข้าสู่แนวคิดที่เรียบง่าย

ตัวอย่างเช่นลองดูที่ ORM (การทำแผนที่วัตถุเชิงสัมพันธ์) โดยที่ SQL ถูกแยกเป็นวัตถุ

เพื่อแทรกรายการใหม่ไปยังฐานข้อมูลที่ไม่มี abstractions โปรแกรมเมอร์จะต้องรู้จัก SQL ดังนั้นในการแทรกรายการใหม่โปรแกรมเมอร์จำเป็นต้องจดจำไวยากรณ์ SQL สำหรับการแทรกรายการใหม่ลงในตาราง:

INSERT INTO Items (field1, field2) VALUES (value1, value2)

แต่ด้วย abstractions โปรแกรมเมอร์เพียง แต่ต้องตระหนักถึงความคิดของสิ่งที่เขาปรารถนาจะทำ สิ่งที่เป็นนามธรรมเชิงวัตถุอาจมีลักษณะ:

Item item = new Item(value1, value2)

คุณสามารถไปได้ไกลกว่านี้และคิดว่า SQL นั้นเป็นนามธรรมที่ยิ่งใหญ่สำหรับโครงสร้างและขั้นตอนวิธีการจัดเก็บข้อมูลที่ซับซ้อนมากมายซึ่งอยู่ใกล้แค่ปลายนิ้วของคุณในราคาของการเรียนรู้ภาษาที่เรียบง่าย


ตรงกันข้ามกับสิ่งที่เป็นนามธรรม

ขึ้นอยู่กับสิ่งที่เรากำหนดไว้ว่าเป็นนามธรรมเป็นจริงทั้งหมดเกี่ยวกับการทำมันเพียงพอที่จะรู้เพียงว่าแนวคิดที่เป็นแก่นสารที่อยู่ในมือเราสามารถอนุมานได้ว่าตรงข้ามของนามธรรมในความเป็นจริงesotericaที่การใช้งานหรือสร้างความเข้าใจที่มีการเรียงลำดับของความรู้เฉพาะของบางส่วน ลักษณะของตัวแบบ


1

"สิ่งที่ทำให้ไขว้เขว" - เช่นเดียวกับสิ่งที่เกิดขึ้นเมื่อชิ้นส่วนของรหัสไม่สามารถเข้าใจได้โดยไม่ทราบถึงรายละเอียดของสิ่งที่เกิดขึ้นจริงเมื่อมันถูกเรียกใช้


0

สิ่งที่เป็นนามธรรมมาจาก abs-trahere และฉันจะบอกว่ามันแปลได้ดีที่สุดว่า "ดึงจาก" (แม้ว่าการแปลตามตัวอักษรจะเป็น de-traction) ฉันได้พยายามที่จะอธิบายว่าในบล็อกโพสต์

สิ่งที่เป็นนามธรรมคือกระบวนการของการดึงแก่นแท้จากสิ่งที่เป็นรูปธรรม สิ่งที่เป็นรูปธรรมมักจะซับซ้อนอย่างมาก ตัวอย่างเช่นหากคุณมองเก้าอี้ที่ใกล้ที่สุดคุณจะเห็นว่ามีรายละเอียดมากมายนั่นประกอบขึ้นจริง วัสดุโครงสร้างรูปร่างและอื่น ๆ แต่สิ่งเหล่านี้ไม่จำเป็นเลย สิ่งที่สำคัญคือคุณสามารถนั่งได้
"นามธรรม" ของคุณคือสิ่งที่คุณเห็นเมื่อคุณดู เมื่อคุณดูที่เก้าอี้คุณจะเห็นเก้าอี้ นักมวยปล้ำอาจเห็นอาวุธจริงๆ

ดังนั้นผลลัพธ์ของสิ่งที่เป็นนามธรรมจึงเป็นสาระสำคัญของบางสิ่งจากมุมมองที่กำหนด

ในกรณีของบิตแมปหรือข้อความสิ่งที่เป็นนามธรรมก็คือคุณคิดว่าค่าที่ให้นั้นเป็นสิ่งที่ตอบสนองวัตถุประสงค์เฉพาะ ขึ้นอยู่กับภาษาการเขียนโปรแกรมในมือคุณสามารถแสดงความคิดของคุณในความหมายของภาษา
แต่สำหรับคุณแล้วมันไม่สำคัญเลยว่าข้อมูลพื้นฐานจะเป็น "ไบนารี" หรือไม่ มันก็ใช้ได้เหมือนกันถ้าอ่านตามเวลาจริงจากม้วนกระดาษที่มีข้อมูลที่เข้ารหัสด้วยรูปแบบการเจาะรู 13 บิต คุณไม่สนใจจริงๆ
แน่นอนการใช้บิตแมปที่เป็นรูปธรรมโดยใช้ข้อมูลไบนารีที่เก็บไว้ในหน่วยความจำมีข้อได้เปรียบบางอย่างที่ชัดเจนและคนส่วนใหญ่จะชอบ ยังมีอีกหลายวิธีในการเข้ารหัสข้อมูลบิตแมปตัวอย่างเช่น และมันอาจสมเหตุสมผลที่จะใช้วิธีการที่แตกต่างกันไปพร้อมกัน แต่ยกเว้นรหัสชิ้นเล็ก ๆ ซึ่งเลือกการแสดงตามข้อ จำกัด จำนวนหนึ่งคุณไม่ต้องการมีความรู้เกี่ยวกับลักษณะที่เป็นรูปธรรมของบิตแมป คุณสนใจเฉพาะสิ่งที่จำเป็นจากมุมมองของคุณ ในตัวอย่างนี้อาจเป็นวิธีการหลายวิธีในการจัดการข้อมูลพิกเซล

เพราะสิ่งที่เป็นนามธรรมเป็นสิ่งสำคัญอันดับแรกและเป็นแนวคิดที่สำคัญที่สุด (ในรูปแบบอุดมคติของบางสิ่ง) ความตรงกันข้ามอาจถูกเรียกว่า "ชาติ" เนื่องจากการเขียนโปรแกรมไม่ค่อยเป็นเรื่องทางกามารมณ์ใครอาจไปกับ "การนำไปใช้" ในขณะที่ abstractions มักแสดงเป็นอินเทอร์เฟซ
Concretization ดังที่ @Lior กล่าวก็เป็นคำที่เหมาะสมมากแม้ว่ามันจะเน้นไปที่วิธีการ (เช่นการแสดงสิ่งที่เป็นรูปธรรม - ซึ่งแน่นอนว่าเป็นสิ่งที่หลีกเลี่ยงไม่ได้) แทนที่จะเป็นเป้าหมายที่แท้จริง (เช่นการนำแนวคิดไปใช้)


0

สิ่งที่เป็นนามธรรมเป็นกระบวนการของการลบข้อมูลจำเพาะเพื่อสรุปบางสิ่งบางอย่าง ถ้าสิ่งที่เป็นนามธรรมคือการลบเฉพาะอาจเป็นสิ่งที่ตรงกันข้ามของสิ่งที่เป็นนามธรรม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.